NPM安装在loadRequestedDeps上挂起

问题描述 投票:4回答:8

当我使用NPM下载任何软件包时,它会挂起最后一个命令“loadRequestedDeps”。我已将我的整个-verbose输出添加到此问题的末尾以供参考。它会一直坐在那里,直到我取消命令,没有任何东西将被安装,我的package.json将不会更新。

问题可能是什么?我环顾四周但没有找到如何解决我的特定问题。

这是一些信息:

  • 无论哪种方式,10
  • 节点版本是6.9.1
  • NPM版本是3.10.8
  • 每当我运行NPM安装时,我的CPU最大值为100%。这可能是问题本身吗?然而,我曾经能够在这台计算机上使用NPM安装。

感谢任何可以提供帮助的人。详细输出如下。

npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info ok
npm info it worked if it ends with ok
npm verb cli [ 'C:\\Program Files\\nodejs\\node.exe',
npm verb cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
npm verb cli   'install',
npm verb cli   'moment',
npm verb cli   '--save',
npm verb cli   '-verbose' ]
npm info using [email protected]
npm info using [email protected]
npm verb request uri https://registry.npmjs.org/moment
npm verb request no auth needed
npm info attempt registry request try #1 at 11:19:11 AM
npm verb request id 6aa9ece5a04fcd33
npm verb etag W/"583b0871-194b0"
npm verb lastModified Sun, 27 Nov 2016 16:23:13 GMT
npm http request GET https://registry.npmjs.org/moment
npm http 304 https://registry.npmjs.org/moment
npm verb headers { date: 'Tue, 29 Nov 2016 19:19:02 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: 'W/"583b0871-194b0"',
npm verb headers   age: '11',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-sjc3136-SJC',
npm verb headers   'x-cache': 'HIT',
npm verb headers   'x-cache-hits': '1',
npm verb headers   'x-timer': 'S1480447142.653125,VS0,VE0',
npm verb headers   vary: 'Accept-Encoding' }
npm verb etag https://registry.npmjs.org/moment from cache
npm verb get saving moment to C:\Users\Zach\AppData\Roaming\npm-cache\registry.npmjs.org\moment\.cache.json
npm verb correctMkdir C:\Users\Zach\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
npm verb cache add spec moment
npm verb addNamed "latest" is being treated as a dist-tag for moment
npm info addNameTag [ 'moment', 'latest' ]
npm verb addNameTag registry:https://registry.npmjs.org/moment not in flight; fetching
npm verb get https://registry.npmjs.org/moment not expired, no request
npm verb addNamed "2.17.0" is a plain semver version for moment
npm verb addRemoteTarball https://registry.npmjs.org/moment/-/moment-2.17.0.tgz not in flight; adding
npm verb addRemoteTarball [ 'https://registry.npmjs.org/moment/-/moment-2.17.0.tgz',
npm verb addRemoteTarball   'a4c292e02aac5ddefb29a6eed24f51938dd3b74f' ]
[    ..............] \ loadRequestedDeps: verb addRemoteTarball [ 'https://registry.npmjs.org/moment/-/moment-2.17.0.tgz',
node.js npm packages npm-install package-managers
8个回答
4
投票

我有同样的问题,在我找到这些解决方案之前,它让我疯狂了一天。

在我的C驱动器中创建一个新的“tmp”文件夹,然后将我的SYSTEM环境变量中的TEMP变量更改为C:\ tmp。我的“npm install”仍然无法正常工作。 (这一行动是基于Zach Nagatani的回答。)

我还在我的USER环境变量中定义了两个TEMP变量,我必须删除其中一个变量“npm install”才能开始工作。

上述行动是基于这篇文章:https://github.com/npm/npm/issues/7590

我找到它时很高兴。非常感谢大家。


2
投票

在C:驱动器中创建新文件夹tmp,然后转到命令提示符并键入:

npm config set tmp C:/ tmp


1
投票

这是非常一般的错误..你必须调试

npm install -verbose

它可能1)锁定package.json 2)你在私人网络,由于某种原因无法访问外部世界3)缓存不好(你可以尝试使用npm清除缓存)或(缓存验证)甚至改变其路径(npm config set tmp)


0
投票

有时,当您多次尝试安装软件包时,需要清除缓存:npm cache clear。但与npm相比,纱线是一个非常好的选择,它快速可靠。使用npm -i -g yarn安装它,并从package.json下载依赖关系yarn add package_name,使用yarn install


0
投票

因此,在尝试清除npm缓存后,更新我的npm和节点版本,重新安装npm和节点等...我发现将环境变量TEMP更改为= C:\tmp工作。我不知道为什么。任何信息都会很好。

我找到了这个帖子的答案:npm install hangs on windows with multiple temp directories set

注意:我可以使用他使用的方法(在我的目录中使用set命令,但我必须对每个新项目执行此操作。通过SystemAdvanced System SettingsEnvironment Variables更改变量全局改变它,所以现在我很好走。


0
投票

我试着谷歌搜索没有任何工作,最后我通过设置环境变量找到修复

尝试使用https://github.com/npm/npm/issues/10462


0
投票

最后解决了问题(想知道)

将系统和用户TEMP变量指向C:\ temp,并将目录设为C:\ temp。

1.TEMP = C:\ temp中;

2.在C:处创建目录临时文件


0
投票

npm cache verify为我做了诀窍!

© www.soinside.com 2019 - 2024. All rights reserved.