如何将Jfrog Artifactory中的jar包导入Jenkins的.m2仓库
从Jfrog Artifactory拉取制品到Jenkins .m2仓库操作步骤
前置准备
- 登录Jenkins管理员账号,进入「Manage Jenkins」→「Manage Plugins」,安装Artifactory Plugin和Maven Integration plugin,安装完成后重启Jenkins生效
第一步:配置Artifactory服务连接
- 进入「Manage Jenkins」→「Configure System」,下滑找到JFrog Artifactory配置区域
- 点击「Add Artifactory Server」,填写对应配置:
- Server ID:自定义易识别的标识,比如
artifactory-private - Artifactory URL:你的Artifactory服务访问地址
- 凭证点击「Add」,选择「Username with password」类型,填写Artifactory的登录账号密码,添加后选中该凭证
- 点击「Test Connection」提示连接成功后,保存配置
- Server ID:自定义易识别的标识,比如
第二步:配置Maven拉取规则
你可以根据使用场景选择全局配置或者单任务配置:
方案1:全局配置(所有Jenkins任务共用)
- 进入「Manage Jenkins」→「Global Tool Configuration」,找到Maven配置项,添加一个Maven版本(勾选自动安装即可),保存配置
- 回到「Manage Jenkins」→「Managed files」,点击「Add a new Config」,选择「Maven settings.xml」,自定义配置ID比如
artifactory-maven-settings - 编辑settings.xml内容,添加服务器和镜像配置:
<!-- 配置Artifactory访问凭证 --> <servers> <server> <!-- id要和Artifactory中Maven仓库的ID对应 --> <id>libs-release</id> <username>${artifactory.username}</username> <password>${artifactory.password}</password> </server> <server> <id>libs-snapshot</id> <username>${artifactory.username}</username> <password>${artifactory.password}</password> </server> </servers> <!-- 配置镜像,所有Maven请求走Artifactory --> <mirrors> <mirror> <id>artifactory-all</id> <mirrorOf>*</mirrorOf> <!-- 替换为你Artifactory中Maven虚拟仓库的地址 --> <url>http://你的Artifactory地址/artifactory/libs-public/</url> </mirror> </mirrors>
- 保存配置后,所有Maven类型任务都可以直接使用该settings,拉取的制品会自动存入Jenkins节点的
.m2/repository目录
方案2:流水线任务单独配置
如果仅需要单个流水线任务从Artifactory拉取制品,直接在Jenkinsfile中添加如下配置即可:
pipeline { agent any // 对应全局配置的Maven安装名称 tools { maven 'Maven-3.8.6' } steps { // 加载之前配置的Artifactory服务,server参数对应之前填的Server ID def artifactoryServer = Artifactory.server 'artifactory-private' def mavenBuilder = Artifactory.newMavenBuild() mavenBuilder.tool = 'Maven-3.8.6' // 配置制品拉取对应的仓库 mavenBuilder.resolver server: artifactoryServer, releaseRepo: 'libs-release', snapshotRepo: 'libs-snapshot' // 执行命令拉取pom中所有依赖到本地.m2目录 mavenBuilder.run pom: 'pom.xml', goals: 'dependency:go-offline' } }
方案3:自由风格任务单独配置
- 新建自由风格任务,进入配置页面
- 找到「Build Environment」区块,勾选「Maven3-Artifactory Integration」
- 选择之前配置的Artifactory服务,填写对应的release和snapshot仓库名
- 构建步骤选择「Invoke top-level Maven targets」,选择对应Maven版本,Goals填写
dependency:go-offline - 保存后执行任务即可
验证结果
任务执行成功后,进入Jenkins对应构建节点的用户根目录,默认路径为~/.m2/repository,即可看到从Artifactory拉取的所有制品。
如果Jenkins是容器部署,进入容器内查看上述路径即可。
内容的提问来源于stack exchange,提问作者Srish
相关产品推荐
相关产品推荐

