做不同Node版本的项目开发时,频繁切换Node版本,导致某项目执行npm install
时报错,安装不上,具体错误如下
1 2 3 4 5 6
| $ npm i npm ERR! code EINTEGRITY npm ERR! sha512-4Liqw7ccABzsWV5BzeZeGRSq7KWIgQYzOcmRDEwSX4WAawlQpcAFXZ1Kid72XYrjSnK5yxOS6Gez/iGusYE/Pw== integrity checksum failed when using sha512: wanted sha512-4Liqw7ccABzsWV5BzeZeGRSq7KWIgQYzOcmRDEwSX4WAawlQpcAFXZ1Kid72XYrjSnK5yxOS6Gez/iGusYE/Pw== but got sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==. (5537 bytes)
npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\mulia\AppData\Roaming\npm-cache\_logs\2022-12-21T03_19_34_513Z-debug.log
|
看问题描述,大概能分析出来是因为npm的sha512验证通不过,多半是因为来回切换npm版本导致的。
网上找了一下,解决方法有两种
或
我这里两个方法都试了几遍,问题并没有解决,尝试了很多操作:
切换到常用的几个node版本,分别清理一下npm缓存;
删除node_modules文件夹,重新安装;
重启vscode,重启电脑;
问题依然存在,这可真是难搞。
继续尝试:
删掉package-lock.json;
删除node_modules文件夹;
再清理npm缓存;
最后重新安装。
这次终于搞定了。看来关键步骤应该是要删除package-lock.json才行。
本文永久链接: https://www.mulianju.com/code-eintegrity/