2014-11-22 219 views
0

我想從here Office Open XML運行教程。我已經下載了Docx4j庫,並將其作爲庫添加到netbeans。Docx4j類未找到錯誤

的代碼片斷如下

import org.docx4j.openpackaging.exceptions.Docx4JException; 
    import org.docx4j.openpackaging.packages.WordprocessingMLPackage; 


public class OfficeOpen { 


    public static void main(String[] args) throws Docx4JException { 

     WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.createPackage(); 
     wordMLPackage.getMainDocumentPart().addParagraphOfText("Hello Word!"); 
     wordMLPackage.save(new java.io.File("src/main/files/HelloWord1.docx")); 
      } 

    } 

給予當我運行上面的例子中,我得到以下錯誤

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory 
at org.docx4j.openpackaging.Base.<clinit>(Base.java:43) 
at officeopen.OfficeOpen.main(OfficeOpen.java:24) 
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 
at java.net.URLClassLoader$1.run(URLClassLoader.java:372) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:360) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
... 2 more 
Java Result: 1 
BUILD SUCCESSFUL (total time: 0 seconds) 

看起來像JVM找不到在運行時類,任何建議。我正在使用Netbeans 8.0

回答

4

您錯過了一些docx4j依賴的庫。請參閱http://htmlpreview.github.io/?https://github.com/plutext/docx4j/blob/master/docs/Docx4j_GettingStarted.htmldocx4j依賴關係

事實上你缺少SLF4J是docx4j用途的記錄:http://www.docx4java.org/docx4j/docx4j-3_2_0/dependencies/slf4j-api-1.7.5.jar

也許你需要許多其他問題。

我想這是所有的依賴,althought你可能並不需要所有的人:http://www.docx4java.org/docx4j/docx4j-3_2_0/dependencies/

+0

多虧了依賴問題 – CodeAngel 2014-11-22 22:38:34