2015-03-13 41 views
2

我使用apache POI庫爲了使用java代碼自動更改一個word文件。我創建了一個JtextField,其中我將值導入到程序中,並試圖用給定的值更改Word文件的書籤。當我運行我的程序時,出現以下錯誤:apache poi和Java中的swing問題

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/openxmlformats/schemas/wordprocessingml/x2006/main/impl/CTPImpl$1BookmarkStartList 
at org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.CTPImpl.getBookmarkStartList(Unknown Source) 
at temp.DOCXTest.procParaList(DOCXTest.java:182) 
at temp.DOCXTest.insertAtBookmark(DOCXTest.java:124) 
at temp.testpea$event.actionPerformed(testpea.java:236) 
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) 
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) 
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) 
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) 
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) 
at java.awt.Component.processMouseEvent(Component.java:6505) 
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320) 
at java.awt.Component.processEvent(Component.java:6270) 
at java.awt.Container.processEvent(Container.java:2229) 
at java.awt.Component.dispatchEventImpl(Component.java:4861) 
at java.awt.Container.dispatchEventImpl(Container.java:2287) 
at java.awt.Component.dispatchEvent(Component.java:4687) 
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) 
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) 
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) 
at java.awt.Container.dispatchEventImpl(Container.java:2273) 
at java.awt.Window.dispatchEventImpl(Window.java:2719) 
at java.awt.Component.dispatchEvent(Component.java:4687) 
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735) 
at java.awt.EventQueue.access$200(EventQueue.java:103) 
at java.awt.EventQueue$3.run(EventQueue.java:694) 
at java.awt.EventQueue$3.run(EventQueue.java:692) 

任何想法爲什麼會出現這些例外情況?我正在嘗試更改textfield的actionevent中的書籤。是否有任何問題與Apache poi和swing庫?

回答

4

在覈心Apache POI庫旁邊還需要poi-ooxml。 這包含打開和操作 Microsoft Word文件所需的XWPF程序包。

POI 3.11

<dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi</artifactId> 
     <version>3.11</version> 
</dependency> 

POI-OOXML 3.11

<dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi-ooxml</artifactId> 
     <version>3.11</version> 
</dependency> 

OOXML-架構1.1

<dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>ooxml-schemas</artifactId> 
     <version>1.1</version> 
</dependency> 
+0

這解決了問題。謝謝! – 2015-07-21 08:43:49