我有一个pom文件,首先是我自己的存储库,然后是一组公共存储库(repo1,repo2,
java.net等).我们假设所有都是“发布”存储库.
我的问题是maven向所有存储库发出请求,寻找我们的内部jar,要么第一次下载jar,要么验证metadata.xml,如果版本控制的范围是“(1.0.0,1.1.0) ”.
如何应用某种过滤器来表示类似groupID foo.bar只属于存储库“foo”的东西.
这个案例困扰我有两个原因:一个是将这些请求带入公共服务器是浪费带宽(当服务器很慢时,它只会减慢所有内容),其次是它将我们内部包的名称公开到外界的日志文件.
我不想部署本地代理或类似的东西,只是希望某个groupID(或列表)始终转到某个存储库.即使对于非私有工件,对于不在公共通用工具(repo.maven,download.java)上的此类工件,也有助于指定某个工件位于某个存储库上,从而避免这些冗余请求.
最佳答案 我们使用内部Nexus实例并在那里配置了这样的东西. Nexus在行政管理中有它 – >路由选项,您可以在其中为groupId定义掩码,然后指出应使用哪些存储库.
当然,它需要内部Nexus成为开发人员使用的唯一存储库,然后配置任何外部存储库进行代理或镜像.