java.lang.NoClassDefFoundError java 中的异常

标签 java xml jar jaxb xsd

我使用 JAXB 1.0(JDK 1.5 和 Java Web Service Developer Pack 1.5)从 xsd 生成 java 类。它在本地运行良好。当我在服务器中尝试时,出现以下异常。

ErrMsg=[Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/xml/bind/unmarshaller/InterningXMLReader at 
com.impl.runtime.UnmarshallerImpl.unmarshal(Unknown Source) 
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:157)
 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:162) 
 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:171) 
 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:189) 

 Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.unmarshaller.InterningXMLReader 
 at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
 at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
 at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
 at java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 9 more].

有什么帮助吗?

最佳答案

您需要将 jaxb-impl.jar 添加到 Java 构建路径中。 如果您使用 Eclipse 那么 右键单击您的项目,转到“属性”->“Java 构建路径”,单击“添加外部 JAR...”按钮,最后选择 jaxb-ri-20110512/lib/jaxb-impl.jar。除了 jaxb-impl.jar 之外,这还会自动添加 jaxb-api.jar、activation.jar、jsr173_1.0_api.jar 和 jaxb1-impl.jar。现在应该不会有任何问题了。

关于java.lang.NoClassDefFoundError java 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24624483/

相关文章:

java - 存储设置信息

Java - getManifest() 问题 : Not first entry

android - 适当的 android Oauth2 库/框架

java - 显示 Twitter 流时阻止 twitter4j 打印输出

java - Spring Security 中需要授权的文本表示

java - 静态语言和反射

java - commons-math3 中 ValueServer 的功能

SQL Server 2008 FOR XML 路径帮助

java - 如何使细链接在第三个屏幕上抛出按钮?

java - 使用 Windows 调度程序调度任务以运行 .jar 文件和 .ini 配置文件