java mvn install导致RELEASE包不同环境不一致导致依赖冲突

背景:最近项目上线遇到个棘手问题,服务A星期一开发了一个release_20230925包给到B服务,B服务测试环境都没问题,星期五服务AB都发布后到产线上,服务B发布正常,但服务B调用B的一些接口(接口不是A提供的)时候报空指针错误(事后发现空指针式由于引入了A release_20230925包导致的依赖冲突)

原因:服务A使用jekins发布,发布执行的打包脚本是mvn install,mvn install会直接把当前服务打的包推送到jekins本地(版本取决于代码里的版本),这个包在星期五,产线的jekins重新打了一个,服务A在星期二的时候对这个包加了依赖X,导致星期五服务发版的时候重新打了一个带有X依赖的release_20230925在jekins上

此时服务B也发布,在识别release_20230925包时发现jekins上有就直接拿过来用了,没有去远端来包(远端的包是不带X依赖的),导致产线环境新引入了X依赖和服务B冲突,导致错误发生

解决:打包命令用mvn package不要用mvn install

其实和本地拉依赖一样,本地仓库有就不去远端拉依赖了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值