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

通过JFrog使用Maven时无法找到远程仓库问题排查

问题:CircleCI中使用JFrog CLI执行Maven构建报错RemoteRepositoryFilterManager为null

本地执行mvn clean install可正常生成JAR包,但在CircleCI中通过JFrog CLI运行./jfrog rt mvn clean install时触发以下错误:

[main] ERROR org.apache.maven.cli.MavenCli - Cannot invoke "org.eclipse.aether.impl.RemoteRepositoryFilterManager.getRemoteRepositoryFilter(org.eclipse.aether.RepositorySystemSession)" because "this.remoteRepositoryFilterManager" is null

CircleCI配置文件config.yml如下:

version: 2.1
jobs:
  create-build-package:
    docker:
      - image: cimg/openjdk:17.0.10
    working_directory: ~/repo
    steps:
      - checkout
      - run:
          name: Install JFrog CLI
          command: curl -fL https://getcli.jfrog.io | sh
      - run:
          name: Configure JFrog Creds
          command: |
            ./jfrog config add myCompany \
              --artifactory-url $ARTIFACTORY_URL \
              --user $ARTIFACTORY_USER \
              --apikey $ARTIFACTORY_APIKEY \
              --interactive=false
      - run:
          name: Create Maven Build Config
          command: ./jfrog rt mvnc
      - run:
          name: Install Maven
          command: |
            ./jfrog rt mvn clean install
      - run:
          name: Upload Package to JFrog
          command: |
            ./jfrog rt u "multi*/*.jar" release \
              --build-name=karate \
              --build-number=$CIRCLE_BUILD_NUM \
              --flat=false

            ./jfrog rt bce karate $CIRCLE_BUILD_NUM  # collects all environment variables on the agent
            ./jfrog rt bp karate $CIRCLE_BUILD_NUM  # attaches ^^ to the build in artifactory

workflows:
  build:
    jobs:
      - create-build-package:
          context: artifactory

POM文件未配置任何JFrog仓库引用。


解决方案

这个错误通常是Maven版本与JFrog CLI不兼容、环境中未正确安装Maven导致的,可按以下步骤排查修复:

1. 先安装兼容的Maven版本

cimg/openjdk:17.0.10镜像默认未预装Maven,JFrog CLI调用的Maven可能存在版本兼容问题。在执行JFrog构建命令前,先安装指定版本的Maven:

修改CircleCI配置,在Install JFrog CLI步骤后添加:

- run:
    name: Install Maven 3.9.6
    command: |
      wget https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz
      tar xzf apache-maven-3.9.6-bin.tar.gz
      sudo mv apache-maven-3.9.6 /opt/maven
      echo 'export PATH=/opt/maven/bin:$PATH' >> $BASH_ENV
      source $BASH_ENV
      mvn -version

2. 改用系统Maven配合JFrog生成的配置文件

./jfrog rt mvnc会生成settings.xml,直接使用系统Maven命令并指定该配置文件,避免JFrog CLI封装的Maven调用问题:

将原Install Maven步骤替换为:

- run:
    name: Run Maven Build
    command: mvn clean install -s settings.xml

3. 升级JFrog CLI到最新版本

旧版JFrog CLI与Maven 3.8+存在兼容性bug,确保安装最新版本:

- run:
    name: Install JFrog CLI
    command: curl -fL https://getcli.jfrog.io | sh && ./jfrog -v

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 10:03:32