我总是有一些最模糊的问题,而且我经常会发现类似的问题,但不适用于我的实际问题......
无论如何,我遇到了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。
答案 0 :(得分:2)
select your project > right click > properties > java build path > order and export > select JRE entry and hit down
在这里你可以控制类路径条目的顺序,所以如果你想要从maven获取你的jar,首先将它移到JRE的条目之前