【发布时间】:2017-07-07 12:31:03
【问题描述】:
我在我的公司维护使用遗留依赖项的项目。它们中的大多数都在提供的范围内,因为它们存在于我的 JBoss 类路径中。我只需要它们来编译。
我还在我的 pom.xml 中声明了两个额外的存储库 - Jboss Releases 和 Jboss Thirdparty Releases。尽管如此,我并没有明确声明 OSS Sonatype Repository 一些依赖项也是从那里下载的。这让我很困惑。
现在,我必须更改此项目以与我公司内部的 Nexus 存储库一起使用,但缺少一些传递依赖项。
您认为用 jars 填充我的内部 Nexus 并将我的项目更改为仅使用公司内部存储库的最简单方法是什么?
我想到了两种方法: 1. 创建空的本地存储库,然后将其导入 Nexus。 2. 从构建日志中检索下载了哪些存储库,然后创建所有这些位置的镜像。
【问题讨论】:
-
如果您看到从
OSS Sonatype Repository下载的 deps 可能是因为您有一个包含该 repo 的父pom.xml,一个包含该 repo 的settings.xml,或者是一个引用该 repo 的依赖项或传递依赖项(依赖项可以在自己的pom.xml中引用自定义存储库)。 -
我知道这一点,但是如何迁移项目以仅使用我公司的内部存储库。什么是最好的技术。
-
<mirrors> <mirror> <id>ARIS_Allowed_Repos</id> <mirrorOf>*</mirrorOf> <url>repo url</url> </mirror> </mirrors>你在你的setting.xml中使用这些标签 -
好的,但这如何帮助我将适当的工件移动到我的内部存储库中?据我了解,这只是内部镜子已经准备好并装满罐子时的一种选择。
-
@Michał Mielec 如果我知道答案,我会做出答案而不是评论。我只是想我会用我的 2 美分在这里筹码(即我只回答了问题的一小部分)。如果你知道这一点,那么你就不应该在你的问题中写这个:“尽管事实上,我没有明确声明 OSS Sonatype Repository 一些依赖项也是从那里下载的。这让我很困惑。”