npm install 挂在 loadIdealTree:loadAllDepsIntoIdealTree: sill install loadIdealTree
Posted
技术标签:
【中文标题】npm install 挂在 loadIdealTree:loadAllDepsIntoIdealTree: sill install loadIdealTree【英文标题】:npm install hangs on loadIdealTree:loadAllDepsIntoIdealTree: sill install loadIdealTree 【发布时间】:2018-11-04 10:48:45 【问题描述】:我有一个 Node.js 应用程序。当我尝试运行 npm install
时,它会挂起:
loadIdealTree:loadAllDepsIntoIdealTree: sill install loadIdealTree
npm install --verbose
给了我一些额外的信息:
npm info it worked if it ends with ok
npm verb cli [ '/usr/local/bin/node',
npm verb cli '/usr/local/bin/npm',
npm verb cli 'install',
npm verb cli '--verbose',
npm verb cli 'aws-sdk-js' ]
npm info using npm@5.8.0
npm info using node@v8.9.2
npm verb npm-session ea38310110279de7
npm http fetch GET 404 https://registry.npmjs.org/aws-sdk-js 2211ms
npm verb stack Error: 404 Not Found: aws-sdk-js@latest
npm verb stack at fetch.then.res (/usr/local/lib/node_modules/npm/node_modules/pacote/lib/fetchers/registry/fetch.js:42:19)
npm verb stack at tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23)
npm verb stack at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:512:31)
npm verb stack at Promise._settlePromise (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:569:18)
npm verb stack at Promise._settlePromise0 (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:614:10)
npm verb stack at Promise._settlePromises (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:693:18)
npm verb stack at Async._drainQueue (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:133:16)
npm verb stack at Async._drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:143:10)
npm verb stack at Immediate.Async.drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:17:14)
npm verb stack at runCallback (timers.js:789:20)
npm verb stack at tryOnImmediate (timers.js:751:5)
npm verb stack at processImmediate [as _immediateCallback] (timers.js:722:5)
npm verb cwd /Users/me/git/aws-sdk-js-perf
npm verb Darwin 17.5.0
npm verb argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--verbose" "aws-sdk-js"
npm verb node v8.9.2
npm verb npm v5.8.0
npm ERR! code E404
npm ERR! 404 Not Found: aws-sdk-js@latest
npm verb exit [ 1, true ]
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/me/.npm/_logs/2018-05-24T10_30_55_688Z-debug.log
我遇到过其他人遇到过这种情况的情况,但以下似乎解决了他们的问题。它不能解决我的问题:
npm set registry http://registry.npmjs.org/
有人知道哪里出了问题吗?
【问题讨论】:
【参考方案1】:遇到了同样的问题,这条评论 here 为我解决了这个问题:
尝试从“package.json”所在的目录中删除“package-lock.json”文件。
【讨论】:
另外我必须删除node_modules
才能让 npm 再次工作【参考方案2】:
我遇到了这种情况,并删除了我的 package-lock.json 并发现我所在的网络上没有可用的资源。
【讨论】:
【参考方案3】:即使在删除 package-lock.json 之后,npm i
也没有为我们工作。相反,它卡在了另一条消息上 - still removeObsoleteDep removing fs-extra from the tree as its been replaced by a newer version
。
问题是,我们偶尔会使用 yarn。如果是这种情况,使用yarn
安装将解决问题。
【讨论】:
对于大多数使用 NPM 的人来说,添加 yarn 和 NPM 是一个坏主意。选择 yarn 或 NPM 是值得的,但是当你使用 CI 时,在你的项目中同时安装和同时使用它们会反过来咬你——有些东西 yarn 支持,但 NPM 不支持,反之亦然,并且当您运行命令并且它们失败时,这完全是一种痛苦,并且会让您浪费开发时间。至少这是我们最近的经历。【参考方案4】:我有同样的问题。
当我尝试使用 yarn 时,我收到了这条消息:
[1/4] 正在解决包...信息您的似乎有问题 网络连接。正在重试...
其中一个包实际上不可用!
【讨论】:
【参考方案5】:您可能没有package-lock.json
,因此您需要删除npm-shrinkwrap.json
文件并尝试再次执行npm install
,而不是这个文件。
关于 npm-shrinkwrap.json:
npm-shrinkwrap.json 是一个由 npm-shrinkwrap 创建的文件。它是 与 package-lock.json 相同,但有一个主要警告:不像 package-lock.json , npm-shrinkwrap.json 可能包含在 发布一个包。
【讨论】:
【参考方案6】:当您的连接速度非常慢时也会发生此问题
【讨论】:
我的统计数据是:ping=9ms 下载=40 MBPS 下载=3.9M BPS。我可以在同一个浏览器上观看任何问题的动漫:s 几分钟前我刚遇到这个问题。我不能 100% 确定,但我很确定切换到我手机的热点是解决问题的方法。另外,家里其他人都在玩游戏/流媒体,所以网络有些压力...... 我的连接整个早上都很慢,没想到是这个原因,但是,谢谢! 或者根本没有连接。当有问题的虚拟机决定它不想连接到互联网时遇到了这个问题。【参考方案7】:我也遇到过这个问题。原因:未设置代理。
使用以下命令设置您的代理: npm config 设置代理 http://username:password@host:port npm config 设置 https-proxy http://username:password@host:port。 proxy=http://username:password@host:port https-proxy=http://username:password@host:port https_proxy=http://username:password@host:port
发布这个,npm install 顺利通过
【讨论】:
【参考方案8】:我也遇到了同样的问题。在我的情况下,git://
端口被阻塞,npm install
超时时间太长。 (在断定进程挂起之前,它等待的时间比正常情况要长。)
解决方案是将所有 git://
URL 自动重写为 https://
:
在终端中运行以下命令
git config --global url."https://".insteadOf git://
npm install
希望这会有所帮助!
【讨论】:
我相信这也是我的问题,但不是端口。我的互联网提供商一直存在路由问题。很可能是这种情况 为我工作!非常感谢【参考方案9】:这是我的流程:
npm install -verbose
=> 更好地了解挂起的内容。卡在loadAllDepsIntoIdealTree
从与package.json
相同的位置删除package-lock.json
=> 卡在FetchMetadata
做ssh-add
,像this suggestion一样添加我的密钥=>成功
【讨论】:
【参考方案10】:我可以通过两种方式解决它
-
删除“package-lock.json”
从环境变量中删除代理设置(http_proxy / https_proxy)
【讨论】:
【参考方案11】:只需按照以下给定步骤:
-
npm 配置设置注册表http://registry.npmjs.org/ --global
npm 缓存清除 --force
删除你的 package-lock.json 文件(它会在 npm i 之后自动创建)。
现在试试 npm install
这对我有用。
【讨论】:
使用registry.npmjs.org【参考方案12】:在我的情况下 package-lock.json 文件不存在。我尝试使用我的移动热点并且它有效。可能是wifi端的一些问题。但我的互联网在 wifi 上运行良好。只是问题是卡住了
loadIdealTree:loadAllDepsIntoIdealTree: 仍然安装 loadIdealTree
在不同的网络上移动也可以解决您的问题。我知道这很奇怪。希望这也会有所帮助。给未来的人。
【讨论】:
【参考方案13】:我遇到了这个问题,问题是我的 *** 连接断开,并且一些包在我公司的私人包商店中。
【讨论】:
【参考方案14】:就我而言,更换 *** 是有效的。
【讨论】:
【参考方案15】:在我的情况下,我再次检查有关注册表的配置。
npm get registry
并检查此 IP 是否正常工作。
因为我发现我正在设置其他东西,例如 http://10.1.1.1
--- 像 Verdaccio 这样的自我注册,是这里的代理,但它已关闭。
我又设置了npm set registry https://registry.npmjs.org
,
然后它的工作。
【讨论】:
【参考方案16】:唯一对我有帮助的是在 .npmrc
文件中注释掉 proxy
和 https-proxy
行。
我什至不知道这两行是如何以及何时设置的。不记得自己做过。
【讨论】:
【参考方案17】:有同样的问题。对我来说,这是由webpack 观察者引起的。停止观察者会立即推进进程。
【讨论】:
【参考方案18】:如果您仍然对 Windows 用户有此问题。你可以从在 C:/yourfolder 重新安装你的 npm 开始。
【讨论】:
您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。【参考方案19】:我尝试删除 package-lock.json
文件,但没有成功。
最后将我的 Mac 上的节点更新到最新版本解决了这个问题。
【讨论】:
【参考方案20】:我对一些模块使用自己的 npm 存储库,当它关闭时,npm i
只是挂起。
【讨论】:
【参考方案21】:在我的情况下,我在尝试其他一些事情时损坏了我的 npm 配置。
我添加了一个 cafile 属性
使用删除它
npm config edit
【讨论】:
【参考方案22】:对我来说,当我从公司的 *** 断开连接后,问题就消失了。
【讨论】:
这没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review【参考方案23】:所以对于我来说,这是一个带有 npm 的有缺陷的最新版本节点。
我建议您经常检查您是否使用 LTS(长期支持)版本,因为这是日常维护的稳定版本。
我使用的是没有 nvm 的节点,所以我的第一步是删除它(清除它),这是一个简单的主题,您可以根据您的操作系统在 google 上获得很多解决方案。
然后我必须安装 mvn,你也可以使用使用 Curl 的安装教程:如果你遇到 curl 问题,不要担心首先在浏览器上打开 curl 安装脚本并将其复制到文件夹中install.sh 文件,别忘了让它可执行sudo chmod +x myInstall.sh
然后你可以在你的终端运行它
安装 nvm 后,您可能会遇到启用 nvm 以查找远程存储库的问题,不用担心,您只需添加包含此行的文件:
sudo nano ~/.curlrc # use this or vim to create the source file
-k # put this as content and save
现在你的 nvm 应该没问题了
要安装稳定版本,请使用以下命令在 repos 中搜索 LTS 版本
nvm ls-remote | grep LTS
例如,为我的案例选择您想要的任何版本
nvm install v16.13.0
现在您将看到该节点安装了相应版本的 npm(我不建议在这种情况下更新 npm 以避免最新版本问题)
去吧,做你的npm install xxxx@xxxx
这应该工作得很好
不要忘记阅读您的项目需求并选择相应的节点和npm版本。
nvm 可以切换当前版本的 node 和 npm,使用nvm --help
阅读它的文档
【讨论】:
以上是关于npm install 挂在 loadIdealTree:loadAllDepsIntoIdealTree: sill install loadIdealTree的主要内容,如果未能解决你的问题,请参考以下文章
在 node-gyp 重建时挂在 npm install 上的厨师客户端
通过 Maven 前端插件或通过命令行选项从“npm install”输出调试到文件?
挂在 ts-loader (webpack) 上的“npm run”