jenkins配置maven编译tomcat项目并使用Nexus配置私库源
(1)安装maven
1 2 3 | wget https: //archive .apache.org /dist/maven/maven-3/3 .6.2 /binaries/apache-maven-3 .6.2-bin. tar .gz tar xzvf apache-maven-3.6.2-bin. tar .gz cd apache-maven-3.6.2/ |
添加系统变量:
1 | vim /etc/profile |
1 | 增加如下代码: |
1 2 | export M2_HOME= /opt/apache-maven-3 .6.2 export PATH=$M2_HOME /bin :$PATH |
1 | #执行如下代码: |
1 | source /etc/profile |
查看版本号:
1 | mvn -version |
(2)Nexus配置本地私库
下载:https://www.sonatype.com/download-oss-sonatype
1 2 3 | cd /usr/local tar xzvf nexus-3.51.0-01-unix. tar .gz /usr/local/nexus-3 .51.0-01 /bin/nexus start |
启动服务失败时,可通过如下命令前台启动:
1 | /usr/local/nexus-3 .51.0-01 /bin/nexus run #前台运行可观察错误日志 |
默认端口为80081,如果该端口已占用,可修改配置文件进行修改:
1 | vim etc /nexus-default .properties |
浏览器访问:http://localhost:8081 默认用户名:admin,默认密码可查看以下文件:
1 | cat /usr/local/sonatype-work/nexus3/admin .password |
首次登录会提示让修改密码,根据提示输入新密码即可。
登陆后点击进入仓库管理界面,点击导航Browse,这里是所有已经配置的仓库:
Name:
maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取JAR包,这个远端地址可改,也可新建另外一个
maven-releases:私库发行版JAR
maven-snapshots:私库调试版本JAR
maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务
Type:
proxy:代理远端仓库
hosted:本地Jar包
group:仓库组
点击上方齿轮图标,即可打开配置管理页面,其中Repository栏为仓库管理,下面只针对这里的Blob Stores、Repositories说明
Blob Stores:jar包存放路径,默认存放在NEXUS_HOME/sonatype-work\nexus3\blobs\default下,可创建多个
Repositories:
创建代理仓库Proxy
①选择Create repository创建仓库
②选择仓库类型maven2(proxy)
③设置仓库名称
④设置仓库版本,代理仓库通常设置为releases
⑤配置下载存放路径,默认是Blob Stores的default
⑥配置代理仓库地址,我是用阿里的
以上完成后保存创建即可完成代理仓库的创建
创建本地仓库(第三方、代理仓库中没有的jar都放这里)hosted,重复上面的流程,不同处如下
②选择仓库类型maven2(hosted)
④设置仓库版本,releases或snapshots,两者区别如下:
有一个自己封装的jar包,该jar包处于开发版,近期会不停的更新,版本为1.0,使用snapshots仓库,今后jar包更新后,只需将新的包传入到该仓库,
项目中会自动下载更新到这个包,无需修改版本号;用releases这个仓库,每次变更jar包必须升级版本号,对应项目pom文件中要修改,否则新的jar包不会被下载
⑥此步改为,目的是可以上传部署jar
创建仓库组group,重复上面的流程,不同处如下
②选择仓库类型maven2(group)
④设置将哪些仓库归类到一个组里
到现在为止,Nexus仓库部分操作完成。
(3)修改maven配置文件中的仓库源地址
1 | vi /opt/apache-maven-3 .6.2 /conf/settings .xml |
修改maven本地仓库位置,搜索“localRepository”,去掉注释,修改文件夹位置,或者增加如下代码:
1 | <localRepository> /var/lib/jenkins/repo < /localRepository > |
搜索mirrors,在下面增加:
1 2 3 4 5 6 | <mirror> < id > local -aliyun< /id > <mirrorOf>*,!jeecg,!jeecg-snapshots,!com.e-iceblue< /mirrorOf > <name> local -aliyun< /name > <url>http: //192 .168.1.29:18081 /repository/maven-public/ < /url > < /mirror > |
搜索servers,在下面增加:
1 2 3 4 5 | <server> < id > local -aliyun< /id > <username>jenkins< /username > <password>password< /password > < /server > |
注意:mirror 标签内的 id 和 servier 标签内的 id 对应的值保持一致
(4)jenkins编译java项目
编译时下载jar包显示从上面配置的源中下载即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?