maven的依赖冲突

ric*_*rdo 5 dependencies maven-3 maven

如果我有一些libs在不同版本中有其他依赖项,例如: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>
Run Code Online (Sandbox Code Playgroud)

sku*_*uro 5

您需要dependencyManagement在[父] POM中配置一个部分.这将强制出现作为指定版本的传递依赖性的工件.