升级和锁定package.json里的版本号

6 篇文章 0 订阅
2 篇文章 0 订阅

今天同事在升级view-design的时候,drone流程报错了。错误信息如下:

npm ERR! code EINTEGRITY
npm ERR! Verification failed while extracting view-design@4.4.0:
npm ERR! Verification failed while extracting view-design@4.4.0:
npm ERR! sha1-bwgcZzt3QgObs4o6UZOO+rtg0KI= integrity checksum failed when using sha1: wanted sha1-bwgcZzt3QgObs4o6UZOO+rtg0KI= but got sha512-2+xbda6/USUm9Pn+D25NPsIBg7XVhkFC90Ycs0GcFQ4AHZ1QRwDGOj0PGA3eeL4yuVpigdDfmwmNJAoczYXlPA== sha1-w+71q9rNcGAe1e/JAosAZlfmao0=. (2754160 bytes)

起初还以为是npm仓库里版本不存在呢,后来一想不对呀,npm仓库的版本号应该和官网发布的版本号一致才对,官网既然有,说明npm里也有呀,去到npmjs仓库还真找到了,说明不是这个问题。
经过沟通,发现同事直接修改了package-lock.json里的版本号,版本号和校验码不匹配。正确的操作方式应该是修改package.json里的版本号,再npm install 重新生成package-lock.json文件。

如果项目是生产环境,建议大家锁定部分核心组件的版本号,很多时候本地可以,但是发布到线上就报错,原因都是因为版本没锁定,本地的node_modules里的版本号和生产环境cicd时部署的版本不一致。这个问题出现过很多次,切记切记。锁定版本就是把package.json里模块版本号前面的^,删除。例如 ^4.3.2 => 4.3.2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值