当类出现在多个库中时,Eclipse错误地选择JAR作为项目依赖项

时间:2014-05-08 05:06:09

标签: java eclipse maven jar import

我在一个大型Java应用程序上工作,我在Eclipse Kepler下编译时遇到了问题:

  • 该应用程序基于Maven 3.1.0并成功编译
  • 我使用mvn eclipse:eclipse
  • 生成Eclipse配置(项目文件)

问题是某些类存在于多个JAR中(例如,想象一个类Http和这个类的两个版本,其中更新的方法更多)和Eclipse对特定项目的依赖类(较旧的类)做出了错误的选择这使得它无法编译。

我试图在项目依赖项中向上/向下移动Jars,它在某些情况下有所帮助,但是,这意味着我正在更改由Maven更改的配置。

是否可以配置Eclipse以使其“更智能”?它是由Maven引起的(POM文件,Maven的eclipse插件中的一个错误,......)虽然maven编译项目没有任何问题?还有其他建议吗?

1 个答案:

答案 0 :(得分:0)

你不应该使用mvn eclipse:eclipse。今天的官方方式是使用m2-插件(更聪明)与File-> Import->现有Maven项目。

当您打开pom.xml文件时,您可以看到依赖关系层次结构以及选择给定jar的原因。

(请注意,最新Eclipse的大多数但并非所有标准发行版都包含m2e。如果您不能从市场上下载它,但下载包含它的发行版可能更容易。)