记一次构建失败的处理思路

129 阅读1分钟

一、事出场景

公司运维搭建的发布平台,发布时一直都是好好地,突然今天发布就不行了,报错信息如下 image.png

二、解决思路

可以发现,is-core-module@2.16.1这个版本拉不下来,看到500,很多小伙伴肯定觉得是后端的问题,其实不一定

尝试将http://192.168.1.202:4873/is-core-module/-/is-core-module-2.16.1.tgz复制到地址栏打开,发现访问不了

于是去npm官网查看这个包,发现最新的版本是昨天刚发布的,可能是这个原因导致的 image.png

但是is-core-module这个包在package.json中没有找到,说明它是某个包的子包,所以我们要锁定这个包的版本

如果是用yarn

  "resolutions": {
    "is-core-module": "2.15.1"
  },

如果是用npm

"overrides": {
  "is-core-module": "2.15.1"
}

再试一次,就发布成功了

过了大概半个小时,http://192.168.1.202:4873/is-core-module/-/is-core-module-2.16.1.tgz在地址栏又可以打开了,所以将锁定版本的配置项去掉了,再发布一次,又成功了。至此,可以断定,是npm的延时导致的构建失败,解决方案要么就是等一会再发一次,要么就是添加配置项,锁定一个旧的版本