8

我有这种情况:

在此处输入图像描述

我知道“Maven 使用最近获胜策略解决版本冲突”。所以这里根据这个规则赢得了aop 3.0.7。但我还在我的 pom 中定义了一个 dependencyManagement 部分,它看起来像这样:

    <properties>
        <org.springframework.version>3.2.4.RELEASE</org.springframework.version>
        <org.springframework.security.version>3.1.4.RELEASE</org.springframework.security.version>
    </properties>
    
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.springframework</groupId>
                <artifactId>spring-aop</artifactId>
                <version>${org.springframework.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${org.springframework.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-web</artifactId>
            <version>${org.springframework.security.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-config</artifactId>
            <version>${org.springframework.security.version}</version>
        </dependency>

        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.7.1</version>
        </dependency>

    </dependencies>

</project>

这就是依赖项选项卡上的所有内容:

在此处输入图像描述

所以我希望 spring-aop 使用 3.2.4.RELEASE 版本而不是像 webmvc 那样的 3.0.7,因为我在依赖管理中定义了这个。为什么仍然使用旧版本 3.0.7?

4

1 回答 1

6

您的依赖管理声明有错字(com.springframework 而不是 org.springframework)。

这是正确的 pom 条目:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-aop</artifactId>
  <version>3.2.4.RELEASE</version>
</dependency>

不幸的是,由于没有使用依赖项,Maven(或 Eclipse)不会标记为缺少的工件。

于 2013-10-27T03:00:18.873 回答