我在运行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

当前回答

我有一个非常相似的问题,在我的情况下,它是这样工作的:

npm clean

这是一个核心选项,因为它会清除缓存中的每个包。

其他回答

更新.npmrc文件中有作用域包和无作用域包的条目对我来说很有效。 所以我最终使用了

设置注册表SCOPED_REGISTRY_URL

and

设置注册表PUBLIC_REGISTRY_URL

这里有一些有效和有用的回答,但我想补充的是,在我的情况下,最简单的解决方案是:

删除package-lock.json; 删除文件夹AppData\Local\npm\cache或AppData\Roaming\npm\cache; 删除文件夹node_modules.staging; 再次运行npm install。

从那以后,一切都很顺利。

在你的项目上运行下面的命令..

npm rm -rf node_modules && npm rm package-lock.json && npm rm -rf ~/.npm && npm install --update-binary --no-shrinkwrap

将.npmrc和注册表更新为https://对我来说很有效

registry=https://registry.npmjs.org/

我在我所在组织的代理服务器后面,运行以下命令为我解决了这个问题

npm config set proxy http://proxy.yourproxydomain.com:port
npm config set https-proxy http://proxy.yourproxydomain.com:port
npm config set strict-ssl false
npm config set registry https://registry.npmjs.org/