代码之家  ›  专栏  ›  技术社区  ›  Justin Searls

在Maven 2中,是否可以为所有内容指定镜像,但允许故障转移到直接存储库?

  •  4
  • Justin Searls  · 技术社区  · 14 年前

    我理解设置Maven mirror的部分吸引力,例如:

    <mirror>
      <id>nexus</id>
      <name>Maven Repository</name>
      <mirrorOf>*</mirrorOf>
      <url>http://server:8081/nexus/content/groups/public</url>
    </mirror>
    

    documentation 国家:

    通过让Maven镜像所有存储库请求,可以强制它使用单个存储库。

    然而,这是否也表明 * 镜像设置每个工作站 必须 被迫照镜子?

    在Maven 2中,这种“镜像但继续并直接连接到公共repos”的故障转移配置可能吗?会在Maven 3吗?

    4 回复  |  直到 6 年前
        1
  •  2
  •   Brian Fox    14 年前

    这在Maven 2中是不可能的,在Maven 3中是可能的,我们也考虑过在Nexus中添加这种可能性来动态代理工件。归根结底,大多数组织都希望控制开发人员使用的代理回购,因此这个特性在回购管理器中非常流行。

        2
  •  5
  •   Brett Porter    14 年前

    不,没有故障转移模式。您可以将某些存储库排除在使用 <mirrorOf>*,!repository</mirrorOf> ,或者你可以有两个 settings.xml --settings 如果需要的话。

        3
  •  1
  •   Robert Munteanu    14 年前

    this ticket 作者Jason Van Zyl指出

        4
  •  0
  •   lisak    13 年前

    捕获:你使用插件X——也许你实际上并不知道——插件X依赖于工件Y,它在自己的pom中声明了repo&燃气轮机&燃气轮机&燃气轮机;无法控制将所有依赖项请求代理到nexus

    第三种选择是如下所示的global settings.xml,并且只在需要时激活-P nexus,因为如果没有假中央存储库,它的工作效果会令人惊讶。

    <settings>
        <mirrors>
            <mirror>
                <id>nexus</id>
                <name>nexus</name>
                <url>http://localhost:8082/nexus-webapp-1.6.0/content/groups/public</url>
                <mirrorOf>*</mirrorOf>
            </mirror>
        </mirrors>
    
        <profiles>
            <profile>
                <id>nexus</id>
    
                    <repositories>
                    <repository>
                        <id>central</id>
                        <url>http://central</url>
                        <releases>
                            <enabled>false</enabled>
                        </releases>
                        <snapshots>
                            <enabled>false</enabled>
                        </snapshots>
                    </repository>
                </repositories>
                <pluginRepositories>
                    <pluginRepository>
                        <id>central</id>
                        <url>http://central</url>
                        <releases>
                            <enabled>false</enabled>
                        </releases>
                        <snapshots>
                            <enabled>false</enabled>
                        </snapshots>
                    </pluginRepository>
                </pluginRepositories>  
            </profile>
        </profiles>
        <activeProfiles>
    
        </activeProfiles>
    </settings>
    

    在另一个选项卡/窗口中打开图像。 enter image description here