如何包含节点二进制 npm 执行的路径

Windows VSC 运行 npm start就可以了

Npm WARN 生命周期用于脚本的节点二进制文件是 C: Program 文件 nodejs node.exe 但 npm 正在使用 C: where AppData Roaming npm node _ module node bin node.exe 使用 --scripts-prepend-node-path选项包括 执行节点二进制 npm 的路径。

我理解这意味着我的本地版本与 PATH 变量中的版本不同(C: Program Files...)。如何继续告诉它使用 --scripts-prepend-node-path

我在 PATH 变量中用 C:\somewhere\AppData\Roaming\npm\node_modules\node\bin替换了 C:\Program Files\nodejs,它确实接收到了新的 node.exe 得到的 but there is no node binary in the current PATH。再次建议使用 < code > —— crip 使用

执行包含节点二进制 npm 路径的 ts-prepend-node-path 选项
93601 次浏览

Like I said, replacing the actual path in PATH system variable didn't fix the problem completely, it still complained about binary is missing. Found 这个 solved the there is no node binary in the current PATH problem. So I restored the original PATH, then:

只需在应用程序的根文件夹中创建一个名为 。 npmrc的文件, 把这条线放进去:

scripts-prepend-node-path=true

在 Visual Studio 2017中遇到这个问题时,我告诉 VS 始终使用我从 NodeJS.org 安装的 NodeJS,而不是 Visual Studio 附带的定时定位的 NodeJS。(VS2015附带的那个太旧了,已经不能用了。)

在 Visual Studio 中,进入工具 > 选项 > 搜索外部网络工具 > ,并确保“ C: Program Files nodejs”(或 nodejs.org 安装它的地方)在路径列表的第一位,必要时添加它。

这是另一种工作方式: npm config set scripts-prepend-node-path auto

节点二进制和 npm 之间的冲突


如果错误看起来像这样:

Npm 试图使用与它自己运行的节点相同的节点。

通过将节点目录添加到 PATH来解决此冲突:

npm config set scripts-prepend-node-path true

来自 npm 文档 :

Npm run 将 NODE 环境变量设置为节点可执行文件 另外,如果—— script-prepend-node-path 是 传递后,节点所在的目录将添加到 PATH

对于 WebStorm 来说,使缓存失效和重新启动对我来说很有用。