当前位置: 首页 > 知识库问答 >
问题:

如何强制maven从另一个nexus存储库获取依赖项

柳越
2023-03-14
 <dependency>
            <groupId>org.cytoscape</groupId>
            <artifactId>vizmap-api</artifactId>
            <version>3.6.0</version>
        </dependency>
        <dependency>
            <groupId>org.cytoscape</groupId>
            <artifactId>viewmodel-api</artifactId>
            <version>3.6.0</version>
        </dependency>
 <repositories>
    <repository>
        <id>cytoscape_snapshots</id>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>false</enabled>
        </releases>
        <name>Cytoscape Snapshots</name>
        <url>http://code.cytoscape.org/nexus/content/repositories/snapshots/</url>
    </repository>
    <repository>
        <id>cytoscape_releases</id>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
        <name>Cytoscape Releases</name>
        <url>http://code.cytoscape.org/nexus/content/repositories/releases/</url>
    </repository>
</repositories>
<proxies>
    <!-- proxy | Specification for one proxy, to be used in connecting to the 
        network. | -->
     <proxy>
        <id>optional</id>
        <active>true</active>
        <protocol>http</protocol>
        <username>proxyuser</username>
        <password>proxypass</password>
        <host>ourHost</host>
        <port>8080</port>
        <nonProxyHosts>*localAddress</nonProxyHosts>
    </proxy>
</proxies>
<mirrors>
    <!-- mirror | Specifies a repository mirror site to use instead of a given 
        repository. The repository that | this mirror serves has an ID that matches 
        the mirrorOf element of this mirror. IDs are used | for inheritance and direct 
        lookup purposes, and must be unique across the set of mirrors. | -->
    <mirror>
          <id>nexus</id>
          <mirrorOf>*</mirrorOf>
          <name>Our Local Nexus Repo</name>
                  <url>our_nexus:8081/nexus/content/groups/public/</url>   
</mirror>
</mirrors>

cytoscape.org/nexus/的链接是:http://code.cytoscape.org/nexus/content/repositories/releases/org/cytoscape/vizmap-api/3.6.0/

共有1个答案

翟渝
2023-03-14

在镜像配置中添加异常:

<mirrorOf>*,!cytoscape_releases,!cytoscape_snapshots</mirrorOf>

对于这些存储库,它将尝试直接下载它们,而不是通过镜像。

然而,干净的解决方案只是将这些存储库作为代理存储库添加到您的Nexus中。否则,每个想要构建您的项目的人都必须调整他的本地镜像配置。

 类似资料:
  • 问题内容: 在给定pom.xml文件的情况下,我想扩展可传递依赖关系,并针对每个直接和可传递依赖关系,列出maven从中获取它的存储库。 随着我可以做 获取传递依赖关系树,但不包含存储库信息 获取使用的存储库列表,但不包括依赖项信息 来获取单个工件和可传递依赖项,但似乎获取了很多东西,我无法确定我真正关心的是哪一个。 问题答案: 我认为没有插件可以做到这一点。我认为这样做的原因是,没有人真正对这种

  • 我在本地发布了一个依赖项。依赖项位于路径上 我认为这是Windows上的默认路径。 现在,在另一个项目中,我尝试使用这个库。我的<code>构建。gradle如下所示(以及其他依赖项) 我收到构建错误,某些类不存在等... 这不足以从本地存储库中识别依赖项吗? 我也为其他依赖项使用远程存储库,但工件名称版本是唯一的(com.mycompany:mylibrary:1.0)。我希望从本地存储库中找到

  • 我使用将新工件发布到nexus-maven2存储库(my maven repo)。新的人工制品出现在nexus界面上。另一个sbt项目使用这些人工制品。使用确切要求时;他发现了这些,但当使用一个范围;他获取了可用工件的列表,而该列表从来都不是最新的。 我尝试过的方法/变通方法及其结果: 不工作:使用nexus接口-- 注意事项: 使用不同的版本进行测试,这似乎不是问题;参见相关问题 nexus 3

  • 有没有可能从maven artifactory存储库中获得特定版本的依赖项JAR,谁在构建之后已经“提供”了范围。由于如此多的webapps,并且它们中的大多数都具有公共依赖项,所以考虑将所有依赖项都设置为“提供”(这样web-inf/lib将为空),并且在部署期间从artifactory存储库中获得所有特定版本的“提供”JAR(部署的第一步是将JAR复制到Tomcat公共库,然后是war部署)。

  • 我正在使用gradle构建我的项目,但gradle仅将工件复制到本地maven存储库,而不是所有依赖项。我需要的是将工件及其所有依赖项复制到本地maven存储库中。 请建议在gradle做这件事的方法。我尝试了gradle的文档,但没有成功。

  • 问题内容: 上周,我创建了一个Github存储库,却忘记选择该存储库的许可证。现在已经有3个大型提交。 我问了3个贡献者是否还可以,是否删除了回购文件,然后使用相同的名称再次创建它,这一次在创建回购文件时选择了许可证,他们对此有何看法。 题 有没有一种方法可以将提交提交到新的存储库中(这次第一次提交是LICENSE文件),并且仍然保留提交元信息? 问题答案: 有没有一种方法可以将提交提交到新的存储