4

我首先有一个带有我自己的存储库的 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)上的工件,从而避免那些多余的请求。

4

1 回答 1

2

我们使用内部 Nexus 实例并在那里配置了这样的东西。Nexus 有它的Administration -> Routing选项,您可以在其中定义掩码groupId并指出应该使用哪些存储库。

当然,它需要内部 Nexus 成为开发人员使用的唯一存储库,然后配置任何外部存储库以进行代理或镜像。

于 2012-06-06T13:19:08.180 回答