Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux npm在后安装/解锁时挂起_Linux_Node.js_Npm_Virtualization - Fatal编程技术网

Linux npm在后安装/解锁时挂起

Linux npm在后安装/解锁时挂起,linux,node.js,npm,virtualization,Linux,Node.js,Npm,Virtualization,我有一个Linux服务器,它运行一些使用KVM的虚拟机。主机是内核为2.6.32-32(-pve)的Debian派生版本 在我运行npm install的大约75%的时间里,它在安装模块时挂起。我在愚蠢的调试级别运行它,它总是挂起 npm信息postinstall[模块名称](旧版npm) 或 npm动词解锁使用[…]完成。(较新的npm版本) 永远 它发生在主机上的每个项目中,发生在我测试过的每个节点和每个npm版本(很多,包括最新版本(2.7.x atm))的虚拟化系统上 它也是不确定的。有

我有一个Linux服务器,它运行一些使用KVM的虚拟机。主机是内核为2.6.32-32(-pve)的Debian派生版本

在我运行
npm install
的大约75%的时间里,它在安装模块时挂起。我在愚蠢的调试级别运行它,它总是挂起

npm信息postinstall[模块名称]
(旧版npm)

npm动词解锁使用[…]完成。
(较新的npm版本)

永远

它发生在主机上的每个项目中,发生在我测试过的每个节点和每个npm版本(很多,包括最新版本(2.7.x atm))的虚拟化系统上

它也是不确定的。有时它工作,有时不工作,大多数时候它挂在不同的模块上

在我的开发机器上(在同一个网络中,运行OSX10.10),它工作正常

我不支持任何形式的代理

这里可能出了什么问题


编辑:目前,我通过使用

将所有依赖项作为gzip文件检入,解决了这个问题。我在基于Ubuntu的Jenkins Slave上遇到了同样的问题,通过升级
npm
解决了这个问题

默认的
npm
apt get
安装,现在的版本是
1.3.10
,非常旧(显示为
npm--version
)。至少有两种方法可以升级它:

  • 运行
    sudo npm安装-g npm
    命令。如果要安装特定版本,可以在命令的末尾运行append:
    sudo npm install-gnpm@2.1.3
  • 或者,您可以使用添加节点资源存储库并运行通常的
    sudo apt get update

  • 我在几个小时内都遇到了同样的问题,但无法确定问题出在哪里。我尝试过几次重新安装所有东西,手动安装各个模块,从x64切换到x86版本的NodeJS,等等,但都没有成功

    最后,我改变了网络,从ADSL2+[~2mbps]上的WiFi改为4G热点[~20mbps],只需30秒。不知道为什么,因为这似乎不是一个网络速度问题,但它解决了这个问题


    希望这对其他人也有帮助

    我也做了同样的事情,将我的网络从WiFi切换到了3G,它成功了。

    我也遇到了同样的问题,这就是Github上的问题:

    这里有一些有用的提示,似乎对一些人有所帮助


    对于我来说,执行$npm安装-g node gyp(如这里所建议的:)修复了这个问题。

    我在
    Windows
    上也有同样的问题。我删除了我的
    npm缓存
    文件夹并重新安装了
    npm
    。从那以后一切都正常了。
    npm缓存
    文件夹位于

    <your-drive>\Users\<your-name>\AppData\Roaming\npm-cache
    

    我也有同样的问题,只是跑了

    npm缓存清理


    而且它有效

    在Windows中也有同样的问题。解决方案是在安装节点和npm后重新启动,然后以管理员身份运行命令提示符。

    =>当安装包中的npm阻塞用于IONIC安装和ReactNative以及另一个包npm时,此方法与我一起工作。 您可以更改临时设置: npm配置集前缀C:\Users[用户名]\AppData\Roaming\npm\node\u模块2

    • 更改环境变量集C:\Users[username]\AppData\Roaming\npm\node\u modules2中的路径

    • 运行命令以安装软件包

    • 打开文件资源管理器复制链接C:\Users[用户名]\AppData\Roaming\npm\node\U模块

      确定文件yourpackage.CMD创建了另一个文件夹,该文件夹在节点模块中创建“节点模块2”,并包含您的包文件夹

    • 将包文件CMD复制到父文件夹“npm”

    • 将包文件夹复制到父文件夹“节点\模块”

    • 现在运行npm配置集前缀C:\Users[用户名]\AppData\Roaming\npm

    • 更改环境变量集C:\Users[用户名]\AppData\Roaming\npm中的路径

    • 现在,软件包可以使用命令行正常工作


    在Windows上,确保您使用的是本机CMD(而不是VSCODE或任何IDE)。此外,请尝试增加节点的最大内存限制:

    set NODE_OPTIONS=--max_old_space_size=8096 
    

    很抱歉,我已经尝试了很多npm版本(包括最新的版本(2.7.x)),但运气不好……
    npm安装npm
    感觉很奇怪,但它能工作。。。顺便说一句,旧npm版本的原因可能是
    apt-get
    中的
    nodejs
    包是Node的LTS版本,可能从那时起就使用了npm。你知道这个包的安装后挂起的是什么吗?还有什么是节点版本?~/.npmrc的输出是什么?在运行npm安装之前,您是否尝试过执行
    npm cache clean
    以删除锁定文件?挂起该文件的软件包各不相同。我尝试了很多node和npm版本,还做了
    npm缓存清理
    。我将检查~/.npmrc输出。我只想补充一点,一般来说,我发现连接越稳定,
    npm安装越稳定,并且不会卡住。我尝试了多个版本的
    npm
    没有任何帮助,只是使我的internet/intranet连接更稳定(最佳连接)。我可以确认这一点。从wifi到lan的转变奏效了。谢谢!:)也许你可以试着把它格式化一点,并添加一些关于你提到的过程的更深入的细节?
    set NODE_OPTIONS=--max_old_space_size=8096