You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Azure DevOps中正确配置Azure Artifacts的方法是什么?

Azure DevOps Java Jar包托管与引用流程实现方案

你的需求完全可以通过Azure DevOps原生功能实现,你此前对Azure Artifacts的适用场景判断可能存在偏差:Azure Artifacts原生支持托管Maven格式制品,完全兼容本地Maven工具与Pipeline构建场景的引用需求。

具体操作步骤

1. 创建Maven类型制品源

  • 进入对应Azure DevOps项目的「Artifacts」板块,点击「创建源」
  • 源类型选择Maven,按需配置可见范围、是否启用上游源等参数后保存,记录该源的访问URL后续使用

2. 配置Pipeline自动构建并发布Jar包到制品源

  • 先进入项目设置的「服务连接」页面,创建类型为Maven的服务连接,关联上一步创建的Maven源,自定义服务连接名称,例如MyMavenRepo
  • 修改待发布Jar包项目的pom.xml,添加发布配置:
<distributionManagement>
  <repository>
    <id>MyMavenRepo</id>
    <url>之前记录的Maven制品源访问URL</url>
  </repository>
</distributionManagement>
  • 调整Pipeline的YAML配置,添加Maven构建与发布步骤,示例如下:
steps:
- task: Maven@3
  inputs:
    mavenPomFile: 'pom.xml'
    goals: 'deploy'
    options: '-DskipTests'
    mavenAuthenticateFeed: true
    publishJUnitResults: false
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: '11' # 替换为你项目使用的JDK版本

其中mavenAuthenticateFeed设为true后,Pipeline会自动完成制品源的认证,无需手动配置Maven的settings.xml文件。

3. 本地Maven环境配置引用

  • 找到本地Maven的配置文件settings.xml,默认存储路径为~/.m2/settings.xml
  • 在文件的<servers>节点下添加制品源认证配置:
<server>
  <id>MyMavenRepo</id>
  <username>你的Azure DevOps账号</username>
  <password>Azure DevOps个人访问令牌(PAT),PAT需要勾选「Packaging(读取)」权限</password>
</server>
  • 继续在<repositories>节点下添加制品源配置:
<repository>
  <id>MyMavenRepo</id>
  <url>之前记录的Maven制品源访问URL</url>
  <releases>
    <enabled>true</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>

配置完成后,你就可以在任意本地项目的pom.xml中直接引用发布到该源的Jar包。

4. Pipeline中引用该制品源的Jar包

如果其他Azure Pipeline需要拉取该源的Jar包完成构建,仅需要在对应Pipeline的Maven任务中开启mavenAuthenticateFeed: true参数即可,Pipeline会使用内置服务账号自动完成认证,无需额外配置密钥。

内容的提问来源于stack exchange,提问作者slipperypete

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 04:06:03