今天在Eclipse中将用POI做完的一个读取execl进行数据处理的小项目集成到另外一个project中时报错 java.lang.NoSuchMethodError: org.apache.poi.util.IOUtils.copy(Ljava/io/InputStream;Ljava/io/OutputStream;)V 在网上一搜索原来是MyEclipse原来已经有了poi以前版本的jar包 在类里面执行一下以下代码就可以知道当前类用的那个jar包
Java代码
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("Core POI came from " + path);
将Eclipse中以前的jar包移除即可
Java代码
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("Core POI came from " + path);
将Eclipse中以前的jar包移除即可
本文介绍了解决在Eclipse中使用Apache POI时遇到的版本冲突问题。通过定位到具体使用的POI jar包路径,并从项目中移除旧版本的POI jar包来解决问题。
3534

被折叠的 条评论
为什么被折叠?



