我有一台Linux服务器使用KVM运行一些虚拟机。主机是内核2.6.32-32(-pve)的Debian派生。
大约75%的时间我运行npm install
,它在安装模块时挂起。我在愚蠢的调试级别运行它,它总是挂在线上
npm info postinstall [module name]
(较旧的npm版本)
要么
npm verb unlock done using [...]
(较新的npm版本)
永远。
它发生在主机上的每个项目和虚拟化系统上的每个节点以及我测试的每个npm版本(很多,包括最新版本(2.7.x atm))。
它也不是确定性的。有时它可以工作,有时不工作,而且大部分时间它都挂在不同的模块上。
在我的开发机器上(运行OS X 10.10的同一网络),它工作正常。
我并不支持任何代理。
这可能有什么问题?
编辑:暂时我通过使用https://github.com/JamieMason/shrinkpack将所有依赖项作为gzip压缩文件检入来解决此问题
几个小时我遇到了同样的问题,无法解决问题所在。我尝试重新安装几次,手动安装单个模块,从x64切换到x86版本的NodeJS等,并且无处可去。
最后,我改变了网络,从WiFi到ADSL2 + [~2mbps]到4G热点[~20mbps],它在30秒内工作。不知道为什么,因为它似乎不像网络速度问题,但它解决了问题。
希望这也有助于其他人!
我在基于Ubuntu的Jenkins奴隶上遇到了同样的问题,它通过升级npm
解决了。
由npm
安装的默认apt-get
现在有版本1.3.10
,这是非常古老的(由npm --version
显示)。升级它至少有两种方法:
sudo npm install -g npm
命令。如果要安装特定版本,可以在命令末尾运行它:sudo npm install -g [email protected]
。sudo apt-get update
。我在Windows
上遇到了同样的问题。我删除了我的npm-cache
文件夹并重新安装了npm
。之后一切都开始正常。 npm-cache
文件夹可以在
<your-drive>\Users\<your-name>\AppData\Roaming\npm-cache
请记住启用“查看隐藏文件”,因为默认情况下AppData文件夹是隐藏的
您可以使用命令重新安装npm,
npm i npm -g
我做了同样的事情,将我的网络从WiFi切换到3G,它运作良好。
我遇到了同样的问题,这是Github上的问题:https://github.com/npm/npm/issues/7862
有一些有用的提示似乎可以帮助一些人。
对于我做$ npm install -g node-gyp(如此处建议:http://gangmax.me/blog/2013/05/13/resolve-npm-update-node-gyp-hung-problem/)修复了问题。
我有同样的问题,只是运行
npm cache clean
它的工作原理!
在Windows中遇到同样的问题。解决方案是在安装node和npm后重新启动,然后以管理员身份运行命令提示符。
你可以改变临时:npm配置集前缀C:\ Users [用户名] \ AppData \ Roaming \ npm \ node_modules2