修复npm安装失败错误代码EINTEGRITY

zvms9eto  于 2023-03-30  发布在  其他
关注(0)|答案(6)|浏览(320)

我在这里浏览了各种类似的帖子都没有用。他们都得到了关于使用npm cache verifynpm cache clear等的类似解决方案。
我甚至使用各种可能的方法完全删除了npm和node,并重新开始。我甚至使用了--force。没有任何效果。我分享了最新的日志,希望有人能指出我的Oversite或至少指导我找到可能的解决方案。
我在下面分享最新的日志。

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node',
1 verbose cli   '/usr/local/bin/npm',
1 verbose cli   'i',
1 verbose cli   'npm',
1 verbose cli   '-g',
1 verbose cli   '--force' ]
2 info using npm@5.6.0
3 info using node@v8.9.4
4 warn using --force I sure hope you know what you are doing.
5 verbose npm-session 9e6a63471e97c268
6 silly install loadCurrentTree
7 silly install readGlobalPackageData
8 http fetch GET 200 https://registry.npmjs.org/npm 151ms
9 silly pacote tag manifest for npm@latest fetched in 302ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 silly install loadShrinkwrap
13 silly install loadAllDepsIntoIdealTree
14 silly resolveWithNewModule npm@5.7.1 checking installable status
15 silly pacote trying https://registry.npmjs.org/npm/-/npm-5.7.1.tgz by hash: sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA==
16 silly pacote data for sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== not present. Using manifest.
17 verbose stack Error: sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== integrity checksum failed when using sha512: wanted sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== but got sha512-iBtbJV6DQB9dnO+DHun+8z2zKH2zz8pd5nJQL1NNwCxzeYJnSKIa/pmkgRHxYDIhEkRUKbm8wVdQuwxnaL5jhg==. (2162194 bytes)
17 verbose stack     at Transform.on (/usr/local/lib/node_modules/npm/node_modules/ssri/index.js:275:19)
17 verbose stack     at emitNone (events.js:111:20)
17 verbose stack     at Transform.emit (events.js:208:7)
17 verbose stack     at endReadableNT (_stream_readable.js:1055:12)
17 verbose stack     at _combinedTickCallback (internal/process/next_tick.js:138:11)
17 verbose stack     at process._tickCallback (internal/process/next_tick.js:180:9)
18 verbose cwd /Users/jasongribble
19 verbose Darwin 16.7.0
20 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "i" "npm" "-g" "--force"
21 verbose node v8.9.4
22 verbose npm  v5.6.0
23 error code EINTEGRITY
24 error sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== integrity checksum failed when using sha512: wanted sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== but got sha512-iBtbJV6DQB9dnO+DHun+8z2zKH2zz8pd5nJQL1NNwCxzeYJnSKIa/pmkgRHxYDIhEkRUKbm8wVdQuwxnaL5jhg==. (2162194 bytes)
25 verbose exit [ 1, true ]
enxuqcxy

enxuqcxy1#

运行这些命令解决了我的问题:

rm -rf package-lock.json node_modules
npm install

Reference

iqjalb3h

iqjalb3h2#

我在工作中也遇到过这个问题,原因是master分支中的package-lock.json文件已经过时,包含了旧的完整性值。通过删除package-lock.json文件,我可以运行npm安装,并且不再有EINTEGRITY错误。
我在另一个SO帖子中找到了这个问题的答案:Integrity checksum failure while installing API Connect toolkit #apiconnect .
他们通过NPM的GitHub问题评论得出了答案:https://github.com/npm/npm/issues/16861#issuecomment-305527498

k10s72fa

k10s72fa3#

如果在react-native中创建项目时发生此错误,请运行:

npm cache clean --force

owfi6suc

owfi6suc4#

我删除了node_modules,解决方案文件夹中的package-lock.json,然后我重新运行npm install,它对我来说非常有效。

6bc51xsx

6bc51xsx5#

我看到很多人建议删除package-lock.json文件,但我认为删除它不是一个很好的解决方案,特别是如果你正在处理很久以前写的代码,它有非常特定的依赖版本,没有它代码可能无法正常运行。
如果可能的话,一个更好的解决方案是将旧的package-lock.json替换为另一个工作分支或以前的工作提交,然后运行npm install
这似乎为我解决了问题。

vlf7wbxs

vlf7wbxs6#

检查你使用的本地和远程npm注册表。
我的问题是我更改了CI注册表并提交了一个本地生成的package-lock.json,它具有不同的注册表。
不同的注册表肯定具有导致此问题的包的不同签名。

相关问题