记一次jenkins+maven+nexus3打包中遇到的问题
过程:开发加了个新模块使用jenkins打包,报错如下:
总结就是maven-assembly-plugin模块的jar包没拉下来。去maven服务器查看了repo包情况,/data/maven/repo/org/apache/maven/plugins/maven-assembly-plugin/3.4.2
发现果然没有对应jar包等,说明没拉下来。开发说明明把包上传到nexus了,于是上去看看是否属实。截图如下:
综上得出可能:本地maven没配置nexus库地址?
点击查看包存放库名如下:
进一步查看该库详情:
继续验证查看服务器maven是否配置了改库及对应URL地址:(结果是没配置,于是如下添加配置)
1、添加用户信息,注意下面id和此处保持一致,配置nexus密码
2、添加镜像方式下载依赖(maven配置中)
3、pom.xml方式下载依赖(这个也可在maven配置中配置,如下)
然后重新打包,搞定
注意:maven配置远程仓库的方式有两种,一种是在项目的 pom.xml 中添加 repository 指定远程仓库的地址,一种是在 setting.xml 中添加镜像的方式指定远程仓库。这两种方式都需要在 setting.xml 添加 server 标签指定远程仓库的用户名和密码。
补充:后续如果继续增加很多库,不可能每个库都单独添加配置,可以使用nexus的group类型,把单独的hosted/proxy类型仓库,
都加入到一个仓库组中,提供统一的访问地址,下载时按配置顺序从上往下依次查找。
如下图:
好记性不如烂笔头,最难不过坚持