运行 npm install
安装项目依赖时报错,异常信息如下:
npm ERR! code EINTEGRITY npm ERR! sha1-xxxxxx integrity checksum failed when using sha1: wanted sha1-xxxxxx but got sha512-xxxxxx sha1-yyyyyyy. (10379 bytes)
解决
方式一:直接删除 package-lock.json
文件,重新执行 npm install
即可。
博主在尝试了各种方式无果后,才使用了这种方式,亲测可行。
package-lock.json官方文档
马后炮一下:其实不难发现异常信息中表达的信息就是文件的校验值匹配不上。提到匹配,那一定是涉及到两个东西之间的对比。在这个场景下,一方就是下载下来的文件的sha1值,另一方就是本地记录的sha1值。那本地记录的sha1值是记录在哪里呢?通过全局搜索不难定位到 package-lock.json。简单粗暴操作就是直接删掉 package-lock.json 即可避免sha1校验错误的问题。至于为什么这一次下载的文件的sha1值和上一次下载时记录的sha1值不一致,这还有待考究。
(以下方式来源网络,对我无效,这里也记录下来,后来者可尝试)
方式二:升级 npm
,重新执行 npm install
- 升级npm
npm install -g npm
- 安装项目依赖
npm install
方式三:清缓存,重新执行 npm install
- 删除项目下的
node_modules
- 删除用户缓存
C:\Users\{USER_NAME}\AppData\Roaming\
下的npm
和npm-cache
- 删除全局缓存
{NODE_HOME}/node_cache
- 验证缓存
npm cache verify
- 安装项目依赖
npm install