我有一个项目,它有很多依赖项分布在许多远程仓库中,甚至这些依赖项有时也需要其他远程仓库。
我想创建一个稳定的构建环境,并希望我的本地Nexus安装程序代理项目的所有需求,以便我可以在设置一次后再次重现构建过程而不需要连接到互联网。
也就是说,我的.m2/settings.xml文件将包含:
当然,这还不够。Nexus不会随意代理我从maven安装中获得的每个请求。
目前,据我所知,也是我让它正常工作的方法,对于我遇到的每个远程仓库,我都在Nexus中创建了一个代理,并将其添加到公共组中。
在我的情况下,这些像是15或20个远程仓库。它们大多数是我的软件包的进一步依赖项,即“直到我运行maven构建并命中它们之前才意识到我需要它们”。到目前为止,我发现它们大多被引用在父POM中。
我的问题是:是否有一种方法可以配置Nexus,以便我不需要手动添加每个仓库?
当我重新阅读我的问题时,它几乎听起来像我想要一个真正的HTTP代理,但那么Nexus有什么意义呢?当然,这是一个修辞问题,但我如何在不手动添加它们的情况下解决此问题?
我在Nexus文档中找到的唯一内容是 http://www.sonatype.com/books/nexus-book/reference/config-sect-custom.html:
我想创建一个稳定的构建环境,并希望我的本地Nexus安装程序代理项目的所有需求,以便我可以在设置一次后再次重现构建过程而不需要连接到互联网。
也就是说,我的.m2/settings.xml文件将包含:
<mirrors>
<mirror>
<id>my.public</id>
<url>http://localhost:8081/nexus/content/groups/public</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
当然,这还不够。Nexus不会随意代理我从maven安装中获得的每个请求。
目前,据我所知,也是我让它正常工作的方法,对于我遇到的每个远程仓库,我都在Nexus中创建了一个代理,并将其添加到公共组中。
在我的情况下,这些像是15或20个远程仓库。它们大多数是我的软件包的进一步依赖项,即“直到我运行maven构建并命中它们之前才意识到我需要它们”。到目前为止,我发现它们大多被引用在父POM中。
我的问题是:是否有一种方法可以配置Nexus,以便我不需要手动添加每个仓库?
当我重新阅读我的问题时,它几乎听起来像我想要一个真正的HTTP代理,但那么Nexus有什么意义呢?当然,这是一个修辞问题,但我如何在不手动添加它们的情况下解决此问题?
我在Nexus文档中找到的唯一内容是 http://www.sonatype.com/books/nexus-book/reference/config-sect-custom.html:
...您可能会遇到无法从本地Nexus安装检索工件的项目
并且
...将此存储库作为新代理存储库添加到Nexus中,然后将新代理存储库添加到公共组中