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

Maven settings.xml配置多个Nexus仓库无法回退到第二仓库问题咨询

Maven多仓库配置失败原因及解决方案

配置错误原因

  • mirrors节点配置错误:你给两个镜像都设置了<mirrorOf>*</mirrorOf>,Maven的镜像匹配规则是按顺序匹配第一个符合规则的镜像就停止匹配,所有依赖请求都会被拦截到第一个Maven镜像地址,失败后不会尝试第二个镜像,也不会走你在profile中配置的仓库列表。
  • 存在笔误:第二个jenkins仓库的url配置缺失域名后缀.net,错误地址https://nexus_example/repository/Jenkins_Proxy/会直接导致请求失败。

解决方案

如果你需要配置多个独立仓库,按顺序自动降级拉取,按以下步骤修改配置即可:

方案一:删除mirror配置(推荐,适合直接用配置的仓库列表)

直接删除整个<mirrors>...</mirrors>节点即可,你已经在激活的profile中配置了两个repository,没有mirror拦截的情况下,Maven会自动按照配置顺序尝试拉取依赖,第一个仓库请求失败后会自动尝试第二个仓库。
修改后的完整配置示例:

<settings>
<servers>
   <server>
      <id>maven</id>
      <username>username</username>
      <password>password</password>
   </server>
   <server>
      <id>jenkins</id>
      <username>username</username>
      <password>password</password>
   </server>
</servers>
<profiles>
    <profile>
        <id>nexus</id>
        <repositories>
            <repository>
                <id>maven</id>
                <url>https://nexus_example.net/repository/Maven_Proxy/</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
            <repository>
                <id>jenkins</id>
                <url>https://nexus_example.net/repository/Jenkins_Proxy/</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
    </profile>
</profiles>
<activeProfiles>
    <activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>

方案二:调整mirror匹配规则(适合必须保留镜像配置的场景)

不要用<mirrorOf>*</mirrorOf>匹配所有仓库,改为每个镜像匹配对应id的仓库即可:

<mirrors>
    <mirror>
        <id>maven</id>
        <mirrorOf>maven</mirrorOf>
        <url>https://nexus_example.net/repository/Maven_Proxy/</url>
    </mirror>
    <mirror>
        <id>jenkins</id>
        <mirrorOf>jenkins</mirrorOf>
        <url>https://nexus_example.net/repository/Jenkins_Proxy/</url>
    </mirror>
</mirrors>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 17:54:04