我们正在尝试将maven依赖项分组到一个单独的maven POM类型的项目中。
我们希望将其用作dependency节点内的POM类型依赖项,以及de dependencyManagement内的BOM(物料清单)。
我们公司内部有一个2存储库。(Apache Archiva-2.2.0)。其中一个用于快照,另一个用于发布。
当我尝试使用snapshot版本时,一切正常,但当我想使用发布的版本时,我不断收到一个错误,因为它一直在中央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>
错误信息:
[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项目的快照版本(1.0.1-Snapshot)吗。
解决方案是将以下xml块添加到maven设置中。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
我在Maven有一个内部的Nexus存储库,其中部署了一些插件。在nexus存储库中存在一些不存在的依赖jar文件。是否可以将maven配置为在内部存储库中搜索依赖jar文件,如果在maven中心存储库中不存在搜索。 使现代化 做出了与JimHawkins回答中类似的配置。但我仍然认为它只在nexus内部存储库中查找依赖项。以下是它打印的一些debus Messes:
我试图在OSGI容器上部署我的java模块。通过karaf“feature”,我能够生成feature.xml,它列出了所有需要的包。 正如我们所知,每个包都是一个依赖项。现在我们确实有一些依赖项可以由maven从其存储库中下载。
问题内容: 我有兴趣为我的组织维护一个Maven 2存储库。有哪些指针和陷阱会有所帮助。 设置代码发布时从用户的工件下载或发布到存储库的标准时,用户应遵循哪些准则?您对这类事情有什么样的治理/规则?您在开发人员指南/文档中包括了哪些内容? 更新 :我们已经站起Nexus并对此感到非常满意-遵循Sal的大多数指南,并且没有遇到任何麻烦。此外,我们还限制了通过Hudson CI服务器的部署访问权限和快
我刚刚使用Maven,我需要从一个Ant项目上传一些库。为了开发这个任务,我有一个文件夹,其中包含许多“pom.xml”文件,这些文件引用了我希望使用Maven在Eclipse中添加到我的项目中的jar,还有另一个xml文件,即Ant项目本身。 欢迎所有想法。谢谢
我得到了下面的错误,而导入maven项目从STS的git仓库。 “导入Maven项目”期间发生内部错误。没有枚举常量组织。日食m2e。果心生命周期图。模型插件执行操作。项目
我有一个POM,它在其依赖管理部分中描述了一组依赖项。这组依赖项定义了当我部署应用程序时将提供哪些依赖项,因此我想坚持这个列表,而不是让我的项目重新定义它们。 有没有一种方法可以让我从这个POM继承托管依赖项,而不让它成为我项目的父POM? 我想避免在我的项目POM中指定版本等。