我使用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].
任何帮助?
答案 0 :(得分:2)
您需要将jaxb-impl.jar添加到Java Build Path中。 如果你正在使用Eclipse那么 右键单击项目,转到Properties-> Java Build Path,单击Add External JARs ...按钮,最后选择jaxb-ri-20110512 / lib / jaxb-impl.jar。除了jaxb-impl.jar之外,这应该自动添加jaxb-api.jar,activation.jar,jsr173_1.0_api.jar和jaxb1-impl.jar。现在不应再有任何问题了。
答案 1 :(得分:0)
您错过了类路径中的jaxb-impl.jar
。下载并添加它。