M2Eclipse显示错误,但Maven编译得很好

时间:2014-06-16 19:54:37

标签: java eclipse maven pom.xml m2eclipse

我总是有一些最模糊的问题,而且我经常会发现类似的问题,但不适用于我的实际问题......

无论如何,我遇到了M2Eclipse的问题,在Eclipse中显示错误。目前,我的POM.xml引用了xml-apis:xml-apis某个版本(是的,我已经意识到Xerces的问题),显然,xml-apis会替换而不是覆盖JDK中的类。其中一个具体示例是JDK中org.w3c.dom.Element中的rt.jar;这个类存在,但xml-apis有一个具有相同名称和包结构的类,有效地替换它 - 或者Eclipse认为。

对我来说这对我不利的是,因为xml-apis取代了这个实现而不是覆盖它,所以代码中有引用(我已经负责从Ant迁移到Maven,你可以在那里只需更改构建顺序,Eclipse就会停止产生不明智的库...例如,Element e; e.getTextContext();会产生错误,使得" The method getTextContent() is undefined for the type Element。&#34 ;但是,此错误仅显示在Eclipse的编辑器和“问题”窗口中。但Maven编译得很好......那么为什么Eclipse会显示错误?

据我所知,没有办法在Eclipse中的Maven项目中更改构建顺序,以使其停止这样做。有没有人对此有任何解决方案?

供参考(如果重要,我怀疑)我运行Windows 7 Professional,使用JDK 1.6编译,我使用Maven 3.0.4。

1 个答案:

答案 0 :(得分:2)

select your project > right click > properties > java build path > order and export > select JRE entry and hit down

在这里你可以控制类路径条目的顺序,所以如果你想要从maven获取你的jar,首先将它移到JRE的条目之前