MAVEN BUILD FAILURE - 无法解决项目XYZ的依赖关系

时间:2014-11-17 06:34:24

标签: java spring maven jersey pom.xml

我正在集成jersey和spring,我有以下依赖项,但由于以下错误我无法构建:

我的POM文件:

<dependencies>

        <!-- Jersey -->
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.8</version>
        </dependency>

        <!-- Spring 3 dependencies -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>3.0.5.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>3.0.5.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>3.0.5.RELEASE</version>
        </dependency>

        <!-- Jersey + Spring -->
        <dependency>
            <groupId>com.sun.jersey.contribs</groupId>
            <artifactId>jersey-spring</artifactId>
            <version>1.8</version>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-core</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-web</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-beans</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-context</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

    </dependencies>

CONSOLE SCREEN SAYS:

无法在项目SpringRestMavenCalc上执行目标:无法解析项目的依赖项 SpringRestMavenCalc:SpringRestMavenCalc:war:0.0.1-SNAPSHOT:无法收集[com.sun.jersey:jersey-的依赖项server:jar:1.8(compile),org.springframework:spring-core:jar:3.0.5.RELEASE(compile),org.springframework:spring-context:jar:3.0.5.RELEASE(compile),org.springframework :spring-web:jar:3.0.5.RELEASE(compile),com.sun.jersey.contribs:jersey-spring:jar:1.8(compile)]:没有可用于org.springframework的版本:spring-aop :jar:[2.5.2,3]在指定范围内 - &gt; [帮助1]

这个版本有问题吗?

3 个答案:

答案 0 :(得分:0)

尝试使用以下内容为spring-aop添加maven依赖:

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

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

我想其中一个应该有用

答案 1 :(得分:0)

没有可用于org.springframework的版本:spring-aop:jar:[2.5.2,3)

含义jersey-spring需要 spring-aop 2.5&lt; = version&lt; 3

所以jersey-spring 1.8和spring 3.0.5不兼容

我会尝试以下方法:

  1. 寻找适用于spring 3.0.5的更新版jersey-spring。 也许是上面peeskillet建议的jersey-spring3。
  2. 通过在jersey-spring依赖项中添加排除项,尝试使用spring 3.0.5。 如果需要,请查阅pom here并将其包含在3.0.5版本中。

答案 2 :(得分:0)

谢谢大家的回答,从你的答案中了解到很多。

但我的POM中的变化是我的代码运行的:

添加,

<exclusion>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aop</artifactId>
</exclusion>