如果我有一些库在不同版本中具有其他依赖项,例如此示例:commons-logging-1.0.4.jar(因与 1.1.1 冲突而省略)和 commons-logging-1.1.1.jar。
关于此的最佳实践是什么,通知在相关依赖项中排除此冲突(通过标签)还是因为省略了 lib 而什么都不做?是否有任何问题不指定排除 POM 中的依赖项?
解释如何在 POM 中解决此问题的示例,我将使用以下说明来解决有关版本的内部冲突:
<dependency>
<groupId>struts</groupId>
<artifactId>struts</artifactId>
<version>1.2.8</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
最佳答案
您需要配置一个 dependencyManagement
您的 [父] POM 中的部分。这将强制作为传递依赖项的 Artifact 成为指定版本。
关于maven - Maven 上的依赖冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5278292/