有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Maven从公司回购中撤出,而不是公开提供

我在我的工作机器上,我们的团队从公司的存储库中提取工件。我想拉

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-client</artifactId>
    <version>1.18.1</version>
</dependency>

不管出于什么原因,maven都没有搜索任何公共存储库。在我的POM中,我添加了:

<repositories>
    <repository>
        <id>java.net</id>
        <url>https://maven.java.net/content/repositories/public/</url>
    </repository>
</repositories>

正如hellboy所建议的,在设置中提到了我的公司存储库。xml文件:

<mirror>
    <id>artifactory</id>
    <mirrorOf>*</mirrorOf>
    <url>http://corporate-network-domain/nexus/content/groups/public</url>
    <name>Artifactory</name>
</mirror>

我的理解是,这种配置意味着当Maven试图检索工件时,它将搜索设置中指定的存储库。xml文件,后跟POM文件中指定的repo。有什么是我弄错的吗

似乎有suggestion标记<;mirrorOf>;将所有流量定向到公司网络,解决方案如下: http://maven.apache.org/guides/mini/guide-mirror-settings.html

然而,我仍在阅读,并试图理解该怎么做。解决方案表明如何搜索企业回购协议,然后再公开下一步,提供以下将获得奖励


共 (1) 个答案

  1. # 1 楼答案

    检查设置中是否有以下行。xml-

    <mirrors>
        <mirror>
            <id>someid</id>
            <name>corporate</name>
            <url>corporate repo url</url>
            <mirrorOf>external:*,!someid,!someid2</mirrorOf>
        </mirror>
    </mirrors>
    

    当在配置文件someid和someid2中定义的资源url中找不到工件时,此块将强制所有搜索到“corporate repo url”