假设我在Nexus中有一个“公共”组,其中包含两个存储库“snapshotsA”和“snapshotsB”。两者都包含具有相同Maven坐标的版本,例如com.something:artifact:1.0.0-SNAPSHOT
。 Nexus如何解析SNAPSHOT参考?它是否会查看两个存储库以查找最新元素?或者在找到第一个之后是否满意?
答案 0 :(得分:3)
对于Nexus Repository 2.x中的组,我们解决了组排序中的第一个匹配,除非某种存储库路由或存储库目标规则阻止匹配(例如,如果您知道该组件的错误版本存在于该存储库不通过不可变处理组件等...)
在Nexus Repository 3.x中,由于我们尚未实现存储库路由,因此目前更加简单。小组订购中的第一场比赛就是你要回来的。
答案 1 :(得分:1)
组存储库提供同一URL下的存储库列表。他们从他们服务的所有存储库中获取maven-metadata.xml
个文件,并创建它们的合并表示。它们还通过RFC 6648(这是一个由Sonatype作为OSS提供给Apache的库)提供Lucene索引,允许存储库管理器或工具(如IDE)处理存储库中包含的此工件索引。 )。组存储库的索引也是组中每个存储库的索引的合并表示。
据我所知,对于Nexus 2.x,文件系统是第一个尝试的地方,如果失败,则查询Lucene索引,以便从相应的代理存储库的远程主机解析。 / p>