概述
我们在公司内网开发项目时,MAVEN仓库无法使用外网进行jar包依赖更新,以至于不能使用jenkins自动打包,这时候确实比较头疼。
现在大多数公司办公环境和服务器环境都是不对接外网的,当然有公司也提供内网仓库URL,如果内网私有仓库还不能解决,只能去外网下载手动复制到jenkins里面的maven仓库,然后执行如下步骤:
1.找到jenkins容器里面maven 的配置文件settings.xml, 配置里面<offline>设置为true,注释掉<mirror>配置,走离线模式打包。
2.项目的pom.xml配置,注释掉这段<repository></repository>,
一般maven打包会优先拿配置文件settings.xml里面的url去更新包,如果那里注释了就会取这里的<repository>里面的url去更新,所以两边都要注释才能开启离线模式。
3.jenkinsfile文件配置,添加参数--offline,表示的是打离线包,因为mvn package 默认会优先去外网找更新包。
mvn clean package --offline -Dmaven.test.skip=true
4.手动复制过来的jar包,建议去maven的repository文件夹删除_remote.repositories文件
find ./ -name '_remote.repositories' | xargs rm
最后,如果打包还是报错试着删除下两个文件
find ./ -name '*.lastUpdated' | xargs rm
find ./ -name 'm2e-lastUpdated.properties' | xargs rm
经过这些配置,可以完美解决离线maven打包问题,这也是困扰我好几天的问题,网上各种资料都找过了都没解决,最后自己摸索出来的。
最后
以上就是难过电脑为你收集整理的jenkins使用离线的maven仓库打镜像包的全部内容,希望文章能够帮你解决jenkins使用离线的maven仓库打镜像包所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复