【发布时间】:2017-01-04 12:50:44
【问题描述】:
我已经安装了nodejs。当我尝试通过 power shell 或 cmd 使用 npm 时,它会返回
系统找不到指定的路径。
如果我运行 node -v 一切正常。我也可以通过nodejs 控制台使用npm。我已经尝试多次卸载并重新安装nodejs,但没有帮助。
关于造成这种情况的任何想法?
【问题讨论】:
-
你的路径中有nodeJS的路径吗?
我已经安装了nodejs。当我尝试通过 power shell 或 cmd 使用 npm 时,它会返回
系统找不到指定的路径。
如果我运行 node -v 一切正常。我也可以通过nodejs 控制台使用npm。我已经尝试多次卸载并重新安装nodejs,但没有帮助。
关于造成这种情况的任何想法?
【问题讨论】:
我是这样解决的: 您可能有一个尚未完全删除的旧安装。 通过以下链接再次删除 NODE 和 NPM:How to completely remove node.js from Windows。 然后重新安装。
【讨论】:
对我来说,我只是有一个路径中带有空格的文件夹名称,这被视为新命令。
对于上下文,我的 npm start 会这样做
"setup-dev-test-env": "cross-env __fakedirname=%cd% PUBLIC_URL=id-000/fake/path/to/index.html NODE_ENV=development REACT_APP_MOCK_HOSTNAME=localhost REACT_APP_MOCK_PORT=69 REACT_APP_ROOT_QUERY_PARAM=/ro/420/ot.ini",
"start": "npm run setup-dev-test-env react-scripts start"
而且,由于当前文件夹路径 (%cd%) 包含一个空格,它会尝试运行不存在的内容。
【讨论】:
对我来说,没有其他工作。删除node_modules文件夹后调用npm install解决了问题。
【讨论】:
对我来说,这是我在 Windows 注册表中设置为自动运行的脚本,并且我已经移动了脚本而不更改注册表中的路径。
删除此密钥解决了我的问题:
Computer\HKEY_USERS\S-1-5-21-1659004503-1897051121-1177238915-282167\Software\Microsoft\Command Processor\AutoRun
【讨论】:
我遇到了完全相同的问题,并按照@royki 链接的npm Troubleshooting 中的步骤解决了它
npm install -g npm@latest
选项 1:edit your Windows installation's
PATH将%appdata%\npm放在%ProgramFiles%\nodejs之前。请记住,当您更改PATH或 npm 的安装方式时,您需要重新启动cmd.exe(并可能重新启动 Windows)。选项 2:删除两者
%ProgramFiles%\nodejs\npm%ProgramFiles%\nodejs\npm.cmd
【讨论】:
对于遇到此错误的任何人尝试调试此错误,以了解为什么 npm run <script> 在 Windows 上不适用于 node_modules/.bin/ 中的内容(例如 gulp),这与 npm 使用 cmd.exe 的事实有关bash 的孩子。
您可以使用 npm config set script-shell bash 在 NPM 5.1.0+ 中修复此问题
【讨论】:
.npmrc,内容为script-shell = powershell(或类似)
我发现了问题。 我需要将我的节点路径移到列表的更上方。 Windows 一定是在错误的路径变量中寻找 NPM。 我将节点路径移动到系统路径变量的顶部,现在 NPM 可以工作了。
感谢您的帮助。
【讨论】:
假设您在 Windows 中安装了Node。通常应自动添加NODE_PATH。
对于您的情况,请查看以下 SO Post
还可以查看这篇文章以获取适用于 Linux 和 Windows 操作系统的 NODE 的 ENVIRONMENT SET UP。
更新
【讨论】: