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

执行Maven Clean&Build时,如何通过命令行传递Artifactory访问令牌?

可以通过命令行传递Artifactory访问令牌替代settings.xml配置

直接用-Dartifactory.accessToken无效是因为Maven和Artifactory插件默认不识别这个自定义参数,需要通过以下两种标准方式实现:

方法1:覆盖settings.xml中的服务器凭证参数

先在settings.xml里定义服务器配置,将用户名和密码设为可替换的变量:

<servers>
  <server>
    <id>artifactory-releases</id> <!-- 这个ID要和pom.xml里仓库配置的id一致 -->
    <username>${artifactory.username}</username>
    <password>${artifactory.token}</password>
  </server>
</servers>

然后在命令行执行Maven命令时,直接传递变量值:

mvn clean install -Dartifactory.username=your-username -Dartifactory.token=your-artifactory-access-token

注:部分Artifactory配置允许用户名留空,仅用令牌作为密码,此时可以省略-Dartifactory.username,并把settings.xml里的<username>设为空或同样用变量。

方法2:通过Artifactory Maven插件传递令牌

如果使用JFrog的Artifactory Maven插件,可直接在插件配置中引用令牌变量,然后通过命令行传入:
首先在pom.xml中配置插件:

<build>
  <plugins>
    <plugin>
      <groupId>org.jfrog.buildinfo</groupId>
      <artifactId>artifactory-maven-plugin</artifactId>
      <version>3.2.2</version> <!-- 使用最新稳定版 -->
      <configuration>
        <contextUrl>https://your-artifactory-instance-url</contextUrl>
        <publisher>
          <repoKey>your-target-repo-key</repoKey>
          <password>${artifactory.token}</password>
          <!-- 若无需用户名,可省略username配置 -->
        </publisher>
      </configuration>
    </plugin>
  </plugins>
</build>

然后执行命令时传递令牌:

mvn clean install artifactory:publish -Dartifactory.token=your-access-token

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 03:42:13