cnpm/cnpmjs.org

npm ci 报错: checksum failed

laoboxie opened this issue · 1 comments

使用cnpm搭建的私有源,在安装依赖的时候报错

npm ci --registry=xxx

错误信息:

npm ERR! code EINTEGRITY
npm ERR! sha1-XWtFkM/pDAyNc5bIP/2fwotaZFA= integrity checksum failed when using sha1: wanted sha1-XWtFkM/pDAyNc5bIP/2fwotaZFA= but got sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA== sha1-4QnZq5mo3nNb4ofuPWqZR6GQxK4=. (89584 bytes)

经查看,发现是 @babel/types 这个包的问题。

在单独安装这个包的时候发现 version 和 resolved 版本不同。

安装命令:

npm i @babel/types@7.12.5 --registry=xxx

package-lock.json:

{
    "@babel/types": {
      "version": "7.12.1",
      "resolved": "http://registry.npm.oa.com/@babel/types/download/@babel/types-7.12.5.tgz",
      "integrity": "sha1-4QnZq5mo3nNb4ofuPWqZR6GQxK4=",
      "requires": {
        "@babel/helper-validator-identifier": "^7.10.4",
        "lodash": "^4.17.19",
        "to-fast-properties": "^2.0.0"
      },
}

npm版本:6.14.11
cnpm版本:3.0.0-beta.5

请问这可能是什么原因导致的呢?应该如何解决呢?

更新一下 lock file 即可。