我试图在netbeans概念验证项目中运行Xstream。我有以下代码。
XStream xstream = new XStream();
FileOutputStream fis = new FileOutputStream("Test.xml");
xstream.toXML(company, fis);
程序在第一行代码崩溃时出现以下错误。
Exception in thread "main" java.lang.NoClassDefFoundError: org/xmlpull/v1/XmlPullParserException
at com.thoughtworks.xstream.XStream.<init>(XStream.java:336)
at Parser.XParser.Parse(XParser.java:24)
at rejaxbtest.REJAXBTest.main(REJAXBTest.java:39)
Caused by: java.lang.ClassNotFoundException: org.xmlpull.v1.XmlPullParserException
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)
... 3 more
Java Result: 1
我已经看到另一个有此问题的线程,但给出的答案是将jar放在项目lib目录中,但netbeans已经正确完成了该任务。还有什么其他可能会导致java在运行时无法识别Xstream类的东西,即使它在编译时很好吗?
由于
麦
答案 0 :(得分:2)
Caused by: java.lang.ClassNotFoundException: org.xmlpull.v1.XmlPullParserException
您似乎缺少类路径中的必需jar。
确保所有需要的jar(编译时的jar)都在运行时类路径中(如果是web应用程序,将这些jar复制到lib文件夹)
答案 1 :(得分:0)