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

Gitlab CI集成Maven与JFrog Artifactory时maven-clean-plugin拉取失败

操作错误点

  • 你创建的是generic通用类型本地仓库,而非Maven类型仓库,Maven插件和依赖无法在generic类型仓库中完成索引、识别和拉取匹配
  • 你未在Artifactory中配置Maven公网仓库的代理源,也没有把本地仓库和代理仓库绑定到同一个Maven虚拟仓库,导致Maven请求只在你的本地空仓库里查找资源,无法路由到公网拉取缺失的插件
  • 你配置的MAVEN_REPO_KEY对应的是仅存储私有构建产物的本地release仓库,没有使用包含公网代理能力的虚拟仓库标识

解决配置步骤

方案一:走Artifactory代理所有Maven请求(推荐)

  1. 删除之前创建的generic类型仓库,重新创建三类Maven类型仓库:
    • 本地仓库:类型选maven(local),用于存储你自己构建上传的私有依赖
    • 远程代理仓库:类型选maven(remote),远程地址填公网Maven中央仓地址https://repo1.maven.org/maven2/,开启远程缓存配置
    • 虚拟仓库:类型选maven(virtual),把上面创建的本地仓库、远程代理仓库都加入到该虚拟仓库的成员列表,可将远程代理仓库的排序调整到最前
  2. 将环境变量MAVEN_REPO_KEY的值修改为你刚创建的Maven虚拟仓库的标识key
  3. 重新运行CI即可,首次运行时Artifactory会自动从公网拉取缺失的Maven插件并缓存,后续请求会直接返回本地缓存的资源

方案二:Maven插件直接从公网拉取,不走Artifactory

若不需要通过Artifactory代理公网资源,直接修改项目根目录下的settings.xml,添加公网插件仓库配置即可:

<settings>
  <!-- 原有配置保持不变 -->
  <pluginRepositories>
    <pluginRepository>
      <id>maven-central</id>
      <url>https://repo1.maven.org/maven2</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </pluginRepository>
  </pluginRepositories>
</settings>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 13:54:01