排除Maven依赖关系

我有一个关于排除maven依赖关系的查询.请考虑以下几点

   <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-taglibs</artifactId>
        <version>${spring-security.version}</version>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.security</groupId>
                <artifactId>spring-security-web</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>3.1.0.RELEASE</version>
        <exclusions>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring-web</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>3.1.0.RELEASE</version>
    </dependency>
    <dependency>

我试图实现从Spring 3.0.6到3.1.0的转换. Spring安全3.1.0依赖于spring-security-web 3.0.6版本,依次为spring-web 3.0.6.我需要把它全部带到3.1.0.所以我从Spring安全性中排除spring-security-web,对spring-security-web 3.1.0有一个单独的依赖关系,这反过来排除了spring-web 3.0.6版本,我提供了一个单独的spring-web 3.1.0版本.这个工作,但我觉得会有一个更简单的方法.我试图在Spring安全性下排除spring web,但没有起作用.请帮忙 .

最佳答案
您可以使用dependency management mechanism.

如果您在< dependencyManagement>中创建条目您的pom for spring-security-web和spring-web的部分具有所需的3.1.0版本,该管理版本的工件将覆盖在传递依赖关系树中指定的版本.

我不知道如果真的救了你任何代码,但它是一个更清洁的解决方案IMO.

转载注明原文:排除Maven依赖关系 - 代码日志