我们正在尝试将maven依赖项分组到一个单独的maven POM类型的项目中。
我们希望将此作为依赖项节点内的POM类型依赖项以及de dependencyManagement中的BOM(物料清单)。
我们公司内部有一个2个存储库。 (Apache Archiva - 2.2.0)。 其中一个用于快照,其中一个用于发布。
当我尝试使用快照版本时,一切正常,但是当我想使用发布的版本时,我不断收到错误,因为它一直在寻找中央maven存储库(我们的pom不在其中)的依赖关系)
对我来说,似乎只在快照存储库中搜索POM依赖项。
<properties>
...
<dependency.bla-slf4j-logback-BOM.version>1.0.1</dependency.bla-slf4j-logback-BOM.version>
...
</properties>
<dependencies>
...
<dependency>
<groupId>my.groupid</groupId>
<artifactId>bla-slf4j-logback-BOM</artifactId>
<version>${dependency.bla-slf4j-logback-BOM.version}</version>
<type>pom</type>
</dependency>
...
</dependencies>
<dependencyManagement>
<dependencies>
...
<dependency>
<groupId>my.groupid</groupId>
<artifactId>bla-slf4j-logback-BOM</artifactId>
<version>${dependency.bla-slf4j-logback-BOM.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
...
</dependencies>
</dependencyManagement>
errormessage的:
[ERROR] Non-resolvable import POM: Failure to find my.groupid:bla-slf4j-logback-BOM:pom:1.0.1 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ line 234, column 22 -> [Help 2]
使用命令:
mvn dependency:tree
我检查了我们的档案,工件存在于预期的位置。 我还检查了本地maven目录,正确下载了pom依赖项。
任何想法为什么这不适用于我们的POM项目的发布版本(1.0.1),但适用于我们的POM项目的Snapshot版本(1.0.1-SNAPSHOT)。
答案 0 :(得分:1)
解决方案是将以下xml块添加到maven settings.xml 文件中。
<mirrors>
<mirror>
<id>ourcentral</id>
<name>our central</name>
<url>http://mavenrepourl.goes.here</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
这使它检查我们的内部maven存储库作为中央maven存储库。 (我们的maven存储库将默认的中央存储库作为远程存储库)
特别感谢:Hisham kh