我试图理解项目的pom.xml文件中的依赖项与java类路径/构建路径的顺序之间的联系(我的问题也是关于poms的继承)。
到目前为止,我无法找到详细的逐步解释。
我已经注意到它确实不是“相同”,这意味着,有时我在pom.xml中的依赖关系不会出现在eclipse的构建路径中,或者不会以相同的顺序出现(在提交之后) mvn eclipse:eclipse - $ someflag )。
我们假设我有以下父pom:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>SOME_GROUP_ID</groupId>
<artifactId>PARENT</artifactId>
<version>SOME_VERSION</version>
<name>${project.groupId}:${project.artifactId}</name>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>SOME_OTHER_ARTIFACT1</artifactId>
<version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<modules>
<module>CHILD</module>
</modules>
</project>
并且其他项目的pom.xml继承了它:
<project>
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>SOME_GROUP_ID</groupId>
<artifactId>PARENT</artifactId>
<version>SOME_VERSION</version>
</parent>
<artifactId>CHILD</artifactId>
<name>${project.groupId}:${project.artifactId}</name>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>SOME_OTHER_ARTIFACT2</artifactId>
<version>${project.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
我的问题是:如果我现在在 CHILD 项目上运行 mvn eclipse:eclipse - $ someflag :
谢谢
答案 0 :(得分:0)
重新“我的问题也是关于poms的继承”
请参阅 Maven:完整参考,Project Inheritance:
如果您的项目通过父元素使用继承,则可以避免重复自己。当项目指定父项时,它将继承父项目的POM中的信息。然后它可以覆盖并添加到此父POM中指定的值。
...和Multi-module vs. Inheritance:
从父项目继承和由多模块项目管理之间存在差异。父项目是将其值传递给其子项的项目。多模块项目只管理一组其他子项目或模块。