在 Eclipse 中运行单元测试时发现 AbstractMethodError,而不是在 Cygwin 中运行时发现
这是堆栈跟踪: java.lang.AbstractMethodError:
org.apache.xerces.dom.DeferredDocumentImpl.getXmlStandalone()Z
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.setDocumentInfo(DOM2TO.java:373)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(DOM2TO.java:127)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(DOM2TO.java:94)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:661)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)
...
我在 Eclipse 中运行单元测试时遇到了这个问题,但是如果我在 Cygwin 中使用 Maven 运行它,一切都会正常。我在之前的帖子中进行了搜索,并了解到“如果自上次编译当前执行的方法以来某个类的定义发生了不兼容的更改,则此错误只会在运行时发生。”
我的问题是,什么可以不同的结果表明? Eclipse项目设置中使用了错误的jar(包)?我在 Cygwin 中使用 jdk 1.6.0_27,Eclipse 项目具有相同的设置。谢谢。
Here is the stacktrace:
java.lang.AbstractMethodError:
org.apache.xerces.dom.DeferredDocumentImpl.getXmlStandalone()Z
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.setDocumentInfo(DOM2TO.java:373)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(DOM2TO.java:127)
at com.sun.org.apache.xalan.internal.xsltc.trax.DOM2TO.parse(DOM2TO.java:94)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:661)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)
...
I run into this problem when running the unit test in Eclipse, but everything works fine if I run it with Maven in Cygwin. I have searched in previous posts and understand that "this error can only occur at run time if the definition of some class has incompatibly changed since the currently executing method was last compiled."
My question is that what could the different results indicate? Wrong jar (package) used in Eclipse project setting? I am using jdk 1.6.0_27 in Cygwin, Eclipse project has the same settings. Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是因为类路径中没有
xercesImpl.jar
。如果您使用的是
xerces.jar
,请将其从类路径中删除,并在类路径中添加xercesimpl.jar
。It is because you don't have
xercesImpl.jar
in the class path.If you are using
xerces.jar
, remove it from the classpath and addxercesimpl.jar
in the classpath.