PhpStorm/WebStorm 终端显示旧的 NPM 版本
PhpStorm/WebStorm terminal shows old NPM version
我在Windows 10 x64
运行宁PhpStorm 2018.3
。我已将 NodeJS 更新到 10.14.1,其中包括 NPM 6.4.1。
Windows 命令行工具显示正确的版本
PhpStorm 设置显示正确的版本
我遇到的问题是 PhpStorm 终端仍然显示 NPM 3.10.10,尽管它显示了正确的节点版本。
我试过:
- 正在重新启动 PhpStorm
- 正在重新启动计算机
- 正在卸载和re-installing节点,然后重新启动计算机
这会导致麻烦,因为我的 IDE 终端中的 NPM 运行ning 版本无法看到全局安装的包。
来自Windows命令行的全局包
来自 PhpStorm 终端的全局包
我怎样才能弄清楚这个问题?
更新
运行 where npm
从 PhpStorm 终端显示本地依赖项已安装较旧的 NPM 版本
是否期望本地安装的 NPM 使终端无法看到我的全局包?
更新 2
当我从项目文件夹中 运行 Windows 命令行工具时,一切都按预期工作,这与 PhpStorm 终端不同。看到正确版本,看到全局包,where
命令看不到安装在node_modules
中的本地npm
分辨率
感谢莉娜的解决方案。事实证明,使用 PhpStorm 2018.3
,a new enabled-by-default setting 将项目本地 ./node_modules/.bin
中的二进制文件添加到 $PATH
,因此终端将看到本地安装的 NPM 版本,而不是全局版本。为了解决这个问题,我去了 Settings > Tools > Terminal
并取消选中这个选项:
Add node_modules/.bin from the project root to %PATH%
如果涉及的任何人正在阅读本文,我建议用户添加在选中此选项时不应添加的二进制文件的黑名单。
问题是由将'node_modules/.bin'从项目根目录添加到$PATH(设置|工具|终端)引起的- 因为你在 node_modules/.bin
中有 npm
二进制文件,所以它也被添加到 %PATH%
中,因此在终端中的 运行 npm
中使用。禁用此选项应该可以解决问题
我在Windows 10 x64
运行宁PhpStorm 2018.3
。我已将 NodeJS 更新到 10.14.1,其中包括 NPM 6.4.1。
Windows 命令行工具显示正确的版本
PhpStorm 设置显示正确的版本
我遇到的问题是 PhpStorm 终端仍然显示 NPM 3.10.10,尽管它显示了正确的节点版本。
我试过:
- 正在重新启动 PhpStorm
- 正在重新启动计算机
- 正在卸载和re-installing节点,然后重新启动计算机
这会导致麻烦,因为我的 IDE 终端中的 NPM 运行ning 版本无法看到全局安装的包。
来自Windows命令行的全局包
来自 PhpStorm 终端的全局包
我怎样才能弄清楚这个问题?
更新
运行 where npm
从 PhpStorm 终端显示本地依赖项已安装较旧的 NPM 版本
是否期望本地安装的 NPM 使终端无法看到我的全局包?
更新 2
当我从项目文件夹中 运行 Windows 命令行工具时,一切都按预期工作,这与 PhpStorm 终端不同。看到正确版本,看到全局包,where
命令看不到安装在node_modules
分辨率
感谢莉娜的解决方案。事实证明,使用 PhpStorm 2018.3
,a new enabled-by-default setting 将项目本地 ./node_modules/.bin
中的二进制文件添加到 $PATH
,因此终端将看到本地安装的 NPM 版本,而不是全局版本。为了解决这个问题,我去了 Settings > Tools > Terminal
并取消选中这个选项:
Add node_modules/.bin from the project root to %PATH%
如果涉及的任何人正在阅读本文,我建议用户添加在选中此选项时不应添加的二进制文件的黑名单。
问题是由将'node_modules/.bin'从项目根目录添加到$PATH(设置|工具|终端)引起的- 因为你在 node_modules/.bin
中有 npm
二进制文件,所以它也被添加到 %PATH%
中,因此在终端中的 运行 npm
中使用。禁用此选项应该可以解决问题