Maven省略了与旧版本的jar冲突

时间:2012-05-09 01:30:20

标签: java maven guava playn

我是maven的新手。我的gwt兼容项目使用PlayN,它依赖于Google Guava r09:

<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava</artifactId>
  <version>r09</version>
</dependency>

(该项目本身不是GWT,但它是GWT项目的依赖项,因此其中的所有内容都需要与GWT兼容。)

我想使用r12的gwt兼容版本。做这个的最好方式是什么?我尝试将r12添加到我自己的pom中:

    <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava-gwt</artifactId>
        <version>12.0</version>
    </dependency>

但是Eclipse报告r12“与r09冲突时被省略”。我尝试从PlayN中排除r09,但这不起作用:

<dependency>
            <groupId>com.googlecode.playn</groupId>
            <artifactId>playn-java</artifactId>
            <version>1.1.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>guava</artifactId>
                    <groupId>com.google.guava</groupId>
                </exclusion>
            </exclusions>
        </dependency>

在我的项目中使用r12的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

我能够在我的项目中使用Guava r11。我提供逐步说明,我希望它们在r12中同样有效:

我尝试尽可能少地了解Maven的机制,但我没有在我的pom文件中看到任何排除。您可以在此处找到该文件的完整副本:

答案 1 :(得分:0)

我会说指定您要使用的版本更安全,并排除可能导致问题的传递依赖。

如果您需要进一步的支持,可以运行

mvn依赖:树

在添加排除项之前或之后, 并在此处发布结果