如何修复'npm install'上的包超时?

xbp102n0  于 2023-01-02  发布在  其他
关注(0)|答案(9)|浏览(1019)

当我运行npm install时,它似乎工作正常,直到安装包的一部分。它似乎没有问题的前半部分,但过了一段时间,它将无法到达其他包。我只是得到重复的错误,例如:

npm http request GET https://registry.npmjs.org/react-hot-loader
npm info attempt registry request try #3 at 6:43:34 AM
npm http request GET https://registry.npmjs.org/react-tap-event-plugin
npm info attempt registry request try #3 at 6:43:34 AM
npm http request GET https://registry.npmjs.org/react-test-renderer

等等。
它将继续这样做一个小时,然后安装将失败。
每次安装都会在不同的包处中断,所以我不认为这是某个特定文件的问题。
我可以用我的浏览器和curl访问这些文件。
我的工作有防火墙,但这个域是白名单。
有人知道我能做些什么让它工作吗?或者是什么导致了它?

8ftvxx2r

8ftvxx2r1#

如果是关于时间的问题,你应该找到一个加快npm安装速度的解决方案。
因此,您可以尝试这些比npm install更快的命令:
快1个月1个百分点

npm install --no-audit速度提高15%

npm install --prefer-offline --no-audit速度提高15%
查看这篇文章了解详情:speeding up npm install

8e2ybdfx

8e2ybdfx2#

您可以覆盖~/.npmrc中的最大和最小超时。

// npm config ls -l
// add these 2 lines in ~/.npmrc
fetch-retry-maxtimeout = 6000000
fetch-retry-mintimeout = 1000000
roqulrg3

roqulrg33#

如果它仍然是相关的,或者可能是其他人感兴趣的:对我来说,删除package.lock文件并运行npm cache clean --force是有帮助的。

carvr3hs

carvr3hs4#

如果您的Internet连接有问题,请尝试增加超时时间:

npm config set timeout 6000000

该值为32位整数。

qc6wkl3g

qc6wkl3g5#

这可能不是你的情况,但我遇到了一个包被托管在github与repo网址是只有git协议(端口9418通常不打开防火墙)的问题。
一旦添加到防火墙,我可以npm安装没有问题。
您可以使用以下命令查看存储库URL:

$ npm view zone.js repository.url
git://github.com/angular/angular.git
z9ju0rcb

z9ju0rcb6#

我之前看到一个答案,可以通过覆盖~/.npmrc文件中的最大和最小超时来解决您的问题,但有些人不知道如何操作。首先转到nodejs文件夹-对我来说,它位于**(Y:\Program Files\nodejs)**

  • 打开节点模块文件夹。
  • 然后npm文件夹。
  • 选择(.npmrc)文件+右键单击,然后用任何文本编辑器打开它。
  • 最后添加这两行并单击 Ctrl+S
fetch-retry-maxtimeout = 6000000
fetch-retry-mintimeout = 1000000

.npmrc file after modification

px9o7tmv

px9o7tmv7#

我通过执行以下命令解决了 timeout 问题:

rm package-lock.json
npm i
ff29svar

ff29svar8#

如果你在windows上,尝试以管理员身份运行vscode,我觉得很有效,我试了npm config delete https-proxynpm config delete proxy,试了删除node_modules和package.lock.json,然后运行了npm cache clean --force,但最后在删除node_modules和package.lock.json之前,以管理员身份运行了vscode,它起作用了

myss37ts

myss37ts9#

npm cache clean --force

npm install --force

它工作正常。

相关问题