關於java.lang.NoSuchMethodError: org.apache.poi.POIDocument問題的詳細說明!

來源:互聯網
上載者:User

問題描述:

用eclipse中建立了一個java項目,並使用PIO3.7讀取word文檔表格中的內容,使用Main方法可正確執行並擷取表格內容。

但將類放到boup項目中後,再執行Main方法,會報:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.poi.POIDocument.<init>(Lorg/apache/poi/poifs/filesystem/DirectoryNode;)V
 at org.apache.poi.hwpf.HWPFDocumentCore.<init>(HWPFDocumentCore.java:146)
 at org.apache.poi.hwpf.HWPFDocument.<init>(HWPFDocument.java:218)
 at org.apache.poi.hwpf.HWPFDocument.<init>(HWPFDocument.java:186)
 at cn.ccb.boup.util.poi.OperateWord.readWordCell(OperateWord.java:37)
 at cn.ccb.boup.util.poi.OperateWord.main(OperateWord.java:87)

通過:開啟項目的properties->java build path->order and export,發現poi的2個jar包放到了最後,把poi的包移到最上面。問題解決!

但在boup中啟動項目的weblogic服務後,交易調用上面已實現的方法後,還會報: java.lang.NoSuchMethodError: org.apache.poi.POIDocument錯誤!

經過研究,發現是因為匯入的pio-3.7.jar與sup平台自身所帶的類庫(poi-3.2-FINAL-20081019.jar)發生了衝突,出錯時的“排序和匯出”設定中,匯入的pio-3.7.jar在sup平台自身所帶的類庫(poi-3.2-FINAL-20081019.jar)之後,導致在boup平台跑應用時,平台以poi-3.2-FINAL-20081019.jar為準,而認不到pio-3.7.jar,sup內建的poi-3.2-FINAL-20081019.jar中只提供了對Excel操作的API,而沒有提供對Word操作的API,所以在真實跑應用時,會報: java.lang.NoSuchMethodError:
org.apache.poi.POIDocument錯誤!

解決辦法:在調用讀取WORD表格內容所在的組件包上點右鍵,點屬性,進入“排序和匯出”標籤頁,將pio-3.7.jar的位置上移到poi-3.2-FINAL-20081019.jar之上,見2圖。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.