运行npm命令时终端长时间冻结(卡在idealTree步骤)问题求助
解决npm命令卡在idealTree阶段的问题
我之前也碰到过一模一样的情况!每次跑npm install或者npm update时卡在idealTree: timing idealTree Completed in这一步,冻个好几分钟才继续,折腾了半天终于找到几个靠谱的解决办法,你可以挨个试试:
清理npm缓存:缓存文件损坏或冗余很容易导致这类卡住的问题,执行以下命令强制清理缓存:
npm cache clean --force清理完成后再重新运行你的npm命令,大概率能解决问题。
切换npm镜像源:官方npm registry在国内访问速度不稳定,换成国内镜像源能大幅提升速度。执行命令切换到npmmirror镜像:
npm config set registry https://registry.npmmirror.com/如果你不想全局切换,也可以临时指定源来测试:
npm update --registry=https://registry.npmmirror.com/重新生成package-lock.json:有时候lock文件里的依赖树信息出现异常,会导致idealTree阶段卡住。先备份你的
package-lock.json,然后删除它,再重新执行npm命令,让npm生成全新的lock文件。或者临时禁用lock文件测试:npm update --no-package-lock更新npm到最新版本:旧版本的npm可能存在已知的性能bug,更新到最新版往往能解决这类问题:
npm install -g npm@latest检查并取消网络代理:如果你开启了系统代理或者npm配置了代理,可能会导致网络请求超时卡住。先查看当前代理配置:
npm config get proxy npm config get https-proxy如果有代理配置,执行以下命令删除:
npm config delete proxy npm config delete https-proxy尝试替换包管理器:如果以上方法都没用,可以试试用pnpm或者yarn替代npm,它们的依赖解析效率更高,很少出现这类卡住的情况。比如安装pnpm:
npm install -g pnpm然后用
pnpm update替代npm update试试。
内容的提问来源于stack exchange,提问作者Dmytro Yakymenko




