6

当我尝试使用versions:use-releases我的发布存储库时,它被标记为“已禁用”,这意味着快照依赖项不会解析为发布。我不明白为什么该存储库被视为已禁用。

这是构建的简短调试输出:

[DEBUG]   (f) remoteArtifactRepositories = [       id: snapshots
      url: http://maven.live.hostname.net/content/repositories/snapshots/
   layout: default
snapshots: [enabled => true, update => daily]
 releases: [enabled => true, update => daily]
,        id: company-nexus
      url: http://maven.live.hostname.net/content/groups/public/
   layout: default
snapshots: [enabled => false, update => daily]
 releases: [enabled => true, update => daily]
]
[...]
[DEBUG] Looking for a release of promotion-test-central:promotion-test-central:jar:1.6.0-SNAPSHOT
[INFO] artifact promotion-test-central:promotion-test-central: checking for updates from snapshots
[DEBUG] Reading resolution-state from: /home/tester/.m2/repository/promotion-test-central/promotion-test-central/resolver-status.properties
[DEBUG] Writing resolution-state to: /home/tester/.m2/repository/promotion-test-central/promotion-test-central/resolver-status.properties
[DEBUG] Skipping update check for artifact promotion-test-central:promotion-test-central (/home/tester/.m2/repository/promotion-test-central/promotion-test-central/maven-metadata-company-nexus.xml) from disabled repository company-nexus (http://hostname/content/groups/public/)

我运行一个将请求镜像central到我们的 Nexus 实例的设置,并且还指定了一个全局快照存储库:

    <mirrors>
        <mirror>
            <id>mendeley-nexus</id>
            <mirrorOf>central</mirrorOf>
            <url>http://maven.live.chonp.net/content/groups/public/</url>
        </mirror>
    </mirrors>
    <profiles>
        <profile>
            <id>default</id>
            <repositories>
                <repository>
                    <id>snapshots</id>
                    <url>http://maven.live.chonp.net/content/repositories/snapshots/</url>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
    </profiles>
    <activeProfiles>
        <activeProfile>default</activeProfile>
    </activeProfiles>

存在相关依赖项的发布和快照版本,并且存储库在所有其他方面都按预期工作。

4

2 回答 2

3

您的 settings.xml 文件应按照Nexus book 中的说明进行配置。您的配置将不起作用,因为它仅部分覆盖了 Maven 的超级 pom。

于 2012-06-25T17:08:03.167 回答
1

我也遇到了这个。我能够通过这样做来克服它:

    <repository>
        <id>my-snapshots</id>
        <url>https://nexus.corp.company.com/nexus/content/repositories/snapshots</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>

这与以前的不同:

        <releases>
            <enabled>false</enabled>
        </releases>

当 Maven 查找您当前工件的元数据并将其搜索限制为仅可能包含该工件的存储库时,这似乎会发生。

于 2018-02-01T22:16:05.347 回答