首页 > 编程语言 > 详细

java.lang.NoSuchMethodError: org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(Ljava/io/File;Z) 报错处理

时间:2021-04-22 09:14:19      阅读:44      评论:0      收藏:0      [点我收藏+]
虚拟机不会无缘无故的报错,字面看下:没有该方法,首先应该推测有可能是Jar冲突导致的,因为一些jar中的类在升级的过程中不会向下兼容,所以有一些高级属性或方法就jar中没有,此POI就是。
可以先看下这个类的资源加载路径:
ClassLoader classloader =org.apache.poi.poifs.filesystem.POIFSFileSystem.class.getClassLoader();
URL res = classloader.getResource("org/apache/poi/poifs/filesystem/POIFSFileSystem.class");
String path = res.getPath();
System.out.println("POI Core came from " + path);

发现这个旧的jar被我从3.7-> 4.1.2 升过级了,怎么还会引用到?

处理办法:maven clean 重新编译,旧jar被删除了,问题得以解决!

另外推荐一下:hutool这个开源jar比较好用,看懂他的封装,然后恰当引用到项目中会事半功倍。

java.lang.NoSuchMethodError: org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(Ljava/io/File;Z) 报错处理

原文:https://www.cnblogs.com/c--k/p/14687465.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!