java.lang.NoSuchMethodError: org.apache.poi.POIDocument

问题描述:

用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图。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值