当前位置: 首页 > 知识库问答 >
问题:

为什么POM类型的依赖项在Maven树中没有显示为传递依赖项?

薛寒
2023-03-14

当我有一个包含POM的项目时,例如:

<dependency>
<groupId>org.jboss.arquillian</groupId
<artifactId>arquillian-bom</artifactId
<version>1.1.2.Final</version>  
<type>pom</type
<scope>test</scope>
</dependency>
...
\- org.jboss.arquillian:arquillian-bom:pom:1.1.2.Final:test
(no more lines below it)
...

但是我似乎弄错了,Internet上的Maven文档并没有帮助我解决这个问题。

有什么想法吗?

共有1个答案

孟昊空
2023-03-14

POM类型依赖项通常用于指示父子关系依赖项层次结构中的父项目。默认情况下,POM类型的项目工件不会在maven反应器中展开。只有在反应器中构建了具体的类型(如jar、war等)时,才会为调试日志创建和扩展依赖关系。

但你不应该太担心。如果您想交叉检查这些,那么eclipse pom依赖关系层次结构和pom编辑器中的有效pom选项卡应该会很有帮助。

 类似资料:
  • 我想知道以下jar的所有传递依赖项: 将经典命令移动到pom。项目定义依赖关系和输入的xml: mvn依赖:树 将显示: 我没看到魔咒父母: 乍一看,mvn命令似乎可以显示非pom类型的依赖项。 有没有一种方法可以精确地显示使jar保持活动状态所需的每个文件? 谢谢

  • 我在父POM中声明 此外,儿童pom使用 一切正常吗?但是当我在type = pom中使用这种依赖关系时 我有错误 如何在dependencyManagement中用type = POM $ { Jboss-javaee-7.0 . version }声明一个依赖项如果我在根中带有Jboss-javaee-7.0,那么运行

  • 这个问题将澄清什么是传递依赖,以及它在Maven中如何在非常高的级别上工作。 我的定义是:在依赖树中,比如-- 若C在B中有范围编译,那个么将B声明为A的依赖项就足以用Maven构建A。但是,如果C在B中提供了作用域,那么当Maven构建A时,除非A在其依赖项中声明C,否则该构建不会根据C自动编译A。 这是正确的吗?

  • 我的情况: 我有两个独立的项目A和B。 没有项目A。 A和B使用相同的库: < li >反射-0.9.9-RC1.jar < li >番石榴-11.0.2.jar < Li > XML-API-1.0 . B2 . jar < li>javassist-3.16.1-GA.jar < li>dom4j-1.6.1.jar < li>jsr305-1.3.9.jar 我制作了项目C,这是项目a的插件

  • 我是maven的新手。(我已经搜索了几个小时的答案,但没有运气。mvn依赖:复制依赖不能解决我的问题)我需要复制项目的所有依赖项(以jar的形式),如果我的一个jar依赖于另一个工件,也复制该工件。 示例project1 pom。xml: “project1”依赖于project2。人工制品罐子当我使用“mvn依赖项:复制依赖项”时,我得到了project2。人工制品但我没有得到project3。

  • 上面的解决方案和对这个pom的简单依赖没有作用域(我看到后者被称为“依赖项分组”)有什么区别?唯一的区别是这样的“分组”依赖项具有较低的优先级,而解决依赖项的优先级?