我有一个maven中的多模块项目,其中一些模块依赖于其他模块。现在,充当依赖关系的模块具有一些依赖关系,这些依赖关系已经列在依赖模块的pom中。如何从pom中删除重复的依赖关系?
有没有一种快速的方法来识别这种重复的依赖关系,并将它们从依赖模块的pom中移除?
我有一个maven中的多模块项目,其中一些模块依赖于其他模块。现在,充当依赖关系的模块具有一些依赖关系,这些依赖关系已经列在依赖模块的pom中。如何从pom中删除重复的依赖关系?
有没有一种快速的方法来识别这种重复的依赖关系,并将它们从依赖模块的pom中移除?
项目的依赖关系树可以展开以显示依赖关系冲突。 使用命令
mvn dependency:tree
识别这种重复的依赖关系。
使用pom的<dependency>
部分下的<exclusions>
标记排除这种重复的依赖关系。
<dependencies>
<dependency>
<groupId>sample.ProjectA</groupId>
<artifactId>Project-A</artifactId>
<version>1.0</version>
<scope>compile</scope>
<exclusions>
<exclusion> <!-- declare the exclusion here -->
<groupId>sample.ProjectB</groupId>
<artifactId>Project-B</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
如果您正在使用Eclipse作为IDE然后重复的,可以在相关的pom.xml的依赖层级看到。使用排除标签可以省略它们。
有一个JBoss工具来帮助解决这些问题:http://tattletale.jboss.org/ 不幸的是,这些天似乎并没有得到积极的发展。
你能举一个例子说明'mvn dependency:tree'命令在这种情况下是否有用吗? – MozenRath
当您使用-Dverbose = true运行此命令时,它显示所有重复项和冲突。 – shubham