【发布时间】:2018-04-28 06:07:02
【问题描述】:
我是 Maven 新手,所以仍在尝试了解它是如何工作的。我有一个依赖于 A 的库 B。所以 A 是在 B 的依赖中添加的。 我有项目 C,它依赖于 B 和 A。 因此,如果我在 C 的 POM 中添加 B 库,那么传递依赖应该可以工作,C 应该看到 A。C -> B -> A
我看到我的同事在 C 的 POM 中写了如下内容:
<dependency>
<groupId>B</groupId>
<artifactId>B</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>C</groupId>
<artifactId>C</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>C</groupId>
<artifactId>C</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
当我查看 B 的 pom 时,我发现没有包装信息。所以它既不是罐子也不是战争。它只是被用作一个库。
我的问题是,库(B)的依赖模块是否作为传递依赖项传递给在其依赖项中使用库(B)的项目(C)。
【问题讨论】:
-
排除一个工件只是为了再次添加它是没有意义的。你的同事做错了什么,特别是如果没有 cmets 来解释他为什么这样做。
-
我已经更新了我的问题。请您再检查一下。
-
我回答了问题,但代码与问题不匹配。您应该编辑源代码以使所有内容保持一致。
标签: java spring maven jakarta-ee pom.xml