【发布时间】:2018-09-18 12:48:46
【问题描述】:
在 Nexus 3 (OSS 3.13.0-01) 中,我创建了一个“公共”组,其中包含(除其他外)代理存储库 maven-central (https://repo1.maven.org/maven2/) 和 atlassian (https://maven.atlassian.com/repository/public/)。这两个存储库都包含工件 com.ibm.mobilefirstplatform.clientsdk.android:analyticsapi。如果 Gradle 构建尝试获取此依赖项,则会失败并显示“找不到任何匹配 com.ibm.mobilefirstplatform.clientsdk.android:analyticsapi:[1.0.0,) 因为没有 com.ibm.mobilefirstplatform.clientsdk 的版本。 android:analyticsapi 可用。”
公开组的maven-metadata.xml如下:
<metadata modelVersion="1.1.0">
<groupId>com.ibm.mobilefirstplatform.clientsdk.android</groupId>
<artifactId>analyticsapi</artifactId>
<versioning>
<latest>1.2.2-SNAPSHOT</latest>
<release>1.2.1</release>
<versions>
<version>1.0.0</version>
<version>1.0.1</version>
<version>1.0.2-SNAPSHOT</version>
<version>1.1.0</version>
<version>1.1.1</version>
<version>1.1.2-SNAPSHOT</version>
<version>1.2.0-SNAPSHOT</version>
<version>1.2.0</version>
<version>1.2.1-SNAPSHOT</version>
<version>1.2.1</version>
<version>1.2.2-SNAPSHOT</version>
</versions>
<lastUpdated>20180315061158</lastUpdated>
</versioning>
</metadata>
当我浏览存储库时,它包含版本 1.2.1。 Browsing public repo
所以在我看来,Atlassian repo 的元数据被解析,然后 latest 工件没有找到,因为它是一个 SNAPSHOT 并且在 maven-central 中不可用。两者都配置为 Release repos,并且组内的排序将 maven-central 放在第一位,atlassian 在最后。
我错过了什么?
【问题讨论】:
标签: android maven gradle nexus3