我有一个 maven-java 项目(比如项目 A),它的 pom.xml 中有一个父定义模块。我还有一个外部项目(比如项目 B),它需要来自项目 A 的两个模块的依赖关系。现在,我已经定义了依赖关系来单独提取每个模块。当我将这两个替换为对父 pom 的依赖时,它会在构建时出错。我需要对项目 A 的父 pom 进行一些修改以使其工作吗?
这可以首先完成吗?
我有一个 maven-java 项目(比如项目 A),它的 pom.xml 中有一个父定义模块。我还有一个外部项目(比如项目 B),它需要来自项目 A 的两个模块的依赖关系。现在,我已经定义了依赖关系来单独提取每个模块。当我将这两个替换为对父 pom 的依赖时,它会在构建时出错。我需要对项目 A 的父 pom 进行一些修改以使其工作吗?
这可以首先完成吗?
这可以首先完成吗?
声明对聚合 POM 的依赖不会传递模块。这是行不通的。不过,可以创建一个 POM 来对依赖项进行分组。
例如,EHCache 使用了这种技术。如他们的文档中所述:
Maven 片段
要将 Ehcache 包含在您的项目中,请使用:
<dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.0.1</version> <type>pom</type> </dependency>
该net.sf.ehcache:ehcache
工件精确地用于对依赖项进行分组(并且与 不同net.sf.ehcache:ehcache-parent
)。