我在运行sudo npm安装时得到这个错误。在我的服务器上,npm已经安装好了。我试过删除包锁。Json文件,并运行NPM缓存清理-force,但它没有工作。

我的npm版本是5.3.0。

错误:

npm ERR! code EINTEGRITY
npm ERR! sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== integrity checksum failed when using sha512: wanted sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== but got sha512-WXI95kpJrxw4Nnx8vVI90PuUhrQjnNgghBl5tn54rUNKZYbxv+4ACxUzPVpJEtWxKmeDwnQrzjc0C2bYmRJVKg==. (65117 bytes)

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/ubuntu/.npm/_logs/2017-11-29T05_33_52_182Z-debug.log

当前回答

我的问题有两个:

坏package-lock。json文件 npm-shrinkwrap的存在。Json和包锁。json文件

我所做的是:

删除包锁。json文件 删除npm-shrinkwrap。json文件 再次运行npm install(重新创建了一个好的包锁文件)

修正了我的错误!

其他回答

实际上,这与服务器侧的网络连通性有关。当我在服务器上有良好的连接时,npm安装很好,没有抛出任何错误

对我来说,简单而快速的修复是npm安装特定的包,它说sha是错误的。比如说你的包装被称为awesome-package。

我的解决方案是:

我的包装很棒

这更新了package-lock.json中的sha。

在遍历了所有答案并执行了大部分之后。虽然我拒绝尝试重启魔法,但最终,在我的macbook(MacOS Catalina Ver. 10.15.7)上重新启动后,这个问题得到了解决。

这似乎确实是一个缓存问题,但我所执行的命令都没有清除缓存。

我被困在这个问题上很长一段时间,这就是帮助我的东西。

试试这个:

npm cache clean --force
npm install --update-binary --no-shrinkwrap

在深入研究GitHub问题后找到了这个答案!!

更新nodejs版本对我有用。

curl - ssl https://deb.nodesource.com/setup_12.x | sudo - e bash - Sudo apt-get install -y nodejs