easyExcel报错:

com.alibaba.excel.exception.ExcelGenerateException: Can not close IO

Caused by: java.lang.IncompatibleClassChangeError: Found interface org.apache.poi.util.POILogger, but class was expected

原因:jar包冲突。

easyExcel版本为3.1.0,

	<dependencies>
		<!-- https://mvnrepository.com/artifact/com.alibaba/easyexcel -->
		<dependency>
		    <groupId>com.alibaba</groupId>
		    <artifactId>easyexcel</artifactId>
		    <version>3.1.0</version>
		</dependency>
	</dependencies>

其中自带的poi版本为4.1.2,
在这里插入图片描述
点进去,
在这里插入图片描述
再点进去,
在这里插入图片描述
可以看到poi的相关的jar包版本是4.1.2,

我们项目中一定有其它版本的poi,
后来在parent的依赖中找到了,
在这里插入图片描述
因为两个版本的poi,导致在调用easyExcel时发生了冲突。

解决办法
在自己的项目中,声明poi的版本。

	<properties>
		<poi.version>4.1.2</poi.version>
	</properties>
GitHub 加速计划 / ea / easyexcel
25
5
下载
快速、简洁、解决大文件内存溢出的java处理Excel工具
最近提交(Master分支:3 个月前 )
c42183df Bugfix 1 年前
efa7dff6 * 重新加回 `commons-io` 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐