是否可以告诉maven仅针对某些特定的groupid查找用户定义的存储库?
似乎首先为所有工件尝试用户定义的repo,最终需要更长时间才能构建。
[编辑]
e.g。属于“com.example”组的工件托管在私有存储库中;但其他OSS工件如“org.apache”,“org.codehaus”等则不然。 Maven首先尝试在私有仓库中搜索第三方工件,然后在中央搜索。我想将私有repo查找过滤为“com.example”
答案 0 :(得分:3)
我试图找到一个确定的来源,但答案是否定的。基本上,Maven循环遍历您定义的存储库,直到找到所需的依赖关系,或者没有其他存储库可供检查。
我认为订单是通过您pom.xml
中首先发现的存储库,然后是settings.xml
中首先找到的存储库。
所以诀窍,如果有一个,当你有一个将在某个存储库中找到的依赖,并且就是那里,就是使它成为最后一个要检查的存储库之一,或者接近尾声。
所以你可以做的是在你的pom.xml中添加如下内容:
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>Maven Repository Switchboard</name>
<url>http://repo1.maven.org/maven2</url>
</repository>
<!-- Your custom repository here -->
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>custom</id>
<name>Custom Repo</name>
<url>Custom repo URL</url>
</repository>
</repositories>
首先检查中心。它的hacky,但应该有助于速度。