我有节点v.4.4和npm v.2.14.20(默认与windows安装程序捆绑在一起)。我的操作系统:Windows 7 64位。硬件:戴尔笔记本电脑,16GB内存,SSD,核心i7。
我面临着极慢的npm问题。例如,当我想用
检查节点的版本时node --version
v4.4.0
我在几毫秒内收到输出4.4.0
。
但是当我输入
npm --version
我需要等待荒谬的 8-15秒来接收输出!每个npm命令都是一样的。
我尝试了什么:更新npm(到最近的3.x版本),将节点更新到5.9.0,我也尝试了x86版本的运气 - 同样的事情。
npm
,每个其他cmd命令都能正常工作,系统运行正常吗?答案 0 :(得分:1)
我打赌你PATH中有很多项目。这是该情景的常见症状。
在您的终端中,运行:
echo "$PATH"
如果输出中包含超过8个或9个冒号,或者那里有根目录/
之类的大目录,那么这很可能是罪魁祸首。
作为比较的基础,我在macOS上精心设计的PATH
是:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
如果我运行which npm
,则输出为:
/usr/local/bin/npm
这告诉我npm
我的PATH
位于早期,这对性能非常重要,因为PATH
从左到右搜索在每个目录中存在npm
。
您只需运行以下命令即可快速尝试上面的PATH
而不会产生任何永久性后果:
OLDPATH="$PATH"
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
现在尝试运行以前快速和慢速的命令,看看是否有任何差异。
如果您开始看到“未找到命令”错误,请尝试逐步将内容添加回PATH
或直接运行:
PATH="$OLDPATH"
否则,如果性能保持不变,则可能不是您的PATH
。但如果情况有所改善,请继续阅读以使其成为永久性的。
选择最适合您的PATH
并将其放入shell的启动文件中。这通常位于~/.bashrc
或~/.bash_profile
。尝试找到已经有PATH=...
行的启动文件,注释掉现有行(确保添加解释性注释),然后插入一个具有更好值的类似行。
答案 1 :(得分:0)
遵循 Seth Holladay 的回答,但具有Windows的解决方案
转到我的计算机
右键点击我的电脑,然后选择底部的属性
查看左侧的标签,点击其他系统参数
点击底部的环境变量
在这里,您可以在顶部更改用户环境变量,在底部更改系统范围的环境变量
答案 2 :(得分:0)
升级您的NPM和NodeJS。
答案 3 :(得分:0)
尝试使用git bash代替CMD
答案 4 :(得分:0)
我在 npm 速度慢方面遇到了类似的问题。我已经研究了几个小时的可能解决方案。唯一对我有用的解决方案是使用 npm config set progress false --global
禁用进度条,或者使用不同的终端,例如 git bash 或 windows 终端。
答案 5 :(得分:0)
如果您的机器属于公司,它可能包含防火墙/防病毒软件,会延迟命令行中的每个命令。
当每个 git 命令花费 10 秒以上时,我遇到了同样的问题。
在尝试与 IT 部门诊断问题时,我们发现在 Windows 7 中禁用防火墙/防病毒软件后,一切都运行得更快(应该如此)。
这是 NodeJs 的最新稳定版本。 Node 自带 Npm,所以你也会自动获取最新的 Npm。