组织/ DOM4J / DocumentException

时间:2013-04-02 09:55:18

标签: java xml excel apache-poi

每个人的早上好,

我有java代码让我从xml flie创建一个excel文件..但它无法正确创建文件,我有这个例外,我不理解它的含义:

Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/DocumentException
at org.apache.poi.openxml4j.opc.Package.init(Package.java:145)
at org.apache.poi.openxml4j.opc.Package.<init>(Package.java:132)
at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:67)
at org.apache.poi.openxml4j.opc.Package.create(Package.java:271)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.newPackage(XSSFWorkbook.java:245)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:145)
at escel1.Escel1.main(Escel1.java:104)
Caused by: java.lang.ClassNotFoundException: org.dom4j.DocumentException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

如果有人知道这意味着什么,那对我来说将非常有帮助:)

2 个答案:

答案 0 :(得分:11)

我找到了关于你的问题的关键。您不应将dom4j-1.6.1-sources.jardom4j-1.x.jar的jar文件添加到项目库中。因为jar文件的source名称是纯java文件(xx.java),这意味着它根本就没有编译。

然后重建你的项目,它会正常工作。

希望能帮到你:)。

答案 1 :(得分:2)

Apache POI有一个handy page listing all the components and their dependencies,你应该从阅读它开始!

其次,如果您下载了Apache POI的二进制zip / tarball,那么它会带来您在/lib//ooxml-lib/目录中所需的所有依赖项。确保在类路径中包含所有dependencies required! (你错过了一些,因此错误)