npm install卡在checking installable status阶段的问题求解
故障现象
间隔一个月没更新的项目最近调整了部分JS代码,部署到服务器时直接失败。排查后定位到问题出在npm install执行环节:进程会直接卡死,停在输出checking installable status的步骤不再继续。
换多台不同设备测试复现时,每次卡住步骤对应的依赖包都不固定,因此排除单个依赖包故障的可能,判断问题根因和npm本身相关。
复现规则
本次更新完全没有修改package.json,仅调整了部分业务JS文件,1个月前同配置下执行npm install全程正常,可以顺利完成部署。
现在只要把当前项目的package.json复制到空文件夹下执行npm install,就能稳定复现卡住问题,文件内容如下:
{ "private": true, "devDependencies": { "gulp": "^3.9.1", "laravel-elixir": "^6.0.0-14", "laravel-elixir-webpack-official": "^1.0.2", "node-sass": "^4.5.3" }, "dependencies": { "eventemitter3": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz" } }
现有约束
- 当前通过nvm管理运行环境,使用版本为Node 11.15.0、npm 6.7.0
- 该项目是线上运行的生产项目,未经过严谨兼容性评估不能直接升降级Node、npm版本,这类操作风险过高属于过度处理,暂不考虑
- 已知近期npm官方registry曾出现服务中断故障,目前故障已修复,暂时无法确认该事件和本次问题是否有关联
待确认问题
- 近期是否有其他开发者遇到过完全相同的问题?
- 有没有低风险、可直接落地的解决建议?
内容的提问来源于stack exchange,提问作者cytsunny
相关产品推荐
相关产品推荐

