easyexcel 4.0.3报错NoClassDefFoundError:org/apache/poi/util/POILogFactory

使用EasyExcel导出Excel时报错 Can not close IO 及EasyExcel.write()方法找不到,已解决 1.在使用EasyExcel导出Excel时遇到了两个问题,第一个就是网上用的很多的write()方法我写了报红,这个很简单是easyexcel的pom版本太低了,于是换了下面这个版本 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2 阅读详情
AI摘要

博客指出easyexcel 4.0.3报NoClassDefFoundError是因包冲突,即easyexcel内部与项目其他地方引入的poi包版本不一致。作者记录了解决方法,先查看easyexcel版本引用的poi版本,再在引入easyexcel的pom中排除poi包引用,最后引入对应版本的poi包。

这个报错很明确就是包冲突,easyexcel内部引入了poi的包,项目其他地方也引入了poi的包,两个版本不一致导致的报错。

不说那些排查版本冲突啥的了,此处记录一下我的解决方法。

1.查看自己easyexcel的版本引用的poi版本

https://mvnrepository.com/artifact/com.alibaba/easyexcel

我这里是4.0.3的版本

点进去看,再点到core4.0.3

可以看到poi是5.2.5的版本

在引入easyexcel的pom中排除poi包的引用

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.poi</groupId>
                    <artifactId>poi</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.poi</groupId>
                    <artifactId>poi-ooxml-schemas</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.poi</groupId>
                    <artifactId>poi-ooxml</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

然后再引入对应版本的poi包

<dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>5.2.5</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>5.2.5</version>
        </dependency>

希望对大家能有帮助

EasyExcel导出Excel时POI版本冲突引发的Can not close IO问题排查与解决 本文深入剖析了使用EasyExcel导出Excel时常见的“Can not close IO”异常。文章指出,该问题主要由POI版本冲突引发,并提供了通过依赖树分析、统一POI版本、排除冲突依赖等三步解决方案。同时,文章还分享了避免流重复关闭、异步处理等最佳实践,帮助开发者彻底解决此问题。 阅读详情

相关推荐

org.openxmlformats.schemas.wordprocessingml.x2006

编译tika源文件最难找的jar包,好像很多人都找不到,找了一天才找到

easyExcel的maven依赖(备忘)

pom依赖如下 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.6</version> </dependency> <dependency> <groupId>org.apache.poi</group

weixin_40434637的博客 2万+

在MDK5.37版本中添加Complier Version 5( 解决Missing Compiler Version 5 )

本文章仅作为个人学习记录,方法也是从其他博主的博客中得到的,链接如下:二、Keil——Missing Compiler Version 5 和 core_cm3.c 问题解决 - YI颗白菜 - 博客园 (cnblogs.com) 问题描述 更新最新的keil版本(MDK5.37)后,在编译以前版本的工程文件时,发现出现了非常多的报错,在网上搜索之后发现原来时编译器版本不匹配的问题,即MDK5.37中使用的是Version 6版本的编译器,而缺少Version 5,对于以前编写的工

leveling99的博客 1万+

easyExcel报错:com.alibaba.excel.exception.ExcelGenerateException: Can not close IO

因为两个版本的poi,导致在调用easyExcel时发生了冲突。可以看到poi的相关的jar包版本是4.1.2,easyExcel版本为3.1.0,其中自带的poi版本为4.1.2,我们项目中一定有其它版本的poi,后来在parent的依赖中找到了,在自己的项目中,声明poi的版本。

CaptainCats的博客 1万+

为什么Nano Banana在图像一致性上碾压GPT和豆包?深度解析其技术原理与使用技巧

本文深度解析了Nano Banana在图像一致性上超越GPT和豆包等工具的技术原理。它通过基于参考图的强条件生成、精准的区域感知与掩码控制等核心技术,实现了“外科手术式”的精准图像编辑。文章还分享了包括提示词工程、参数调整在内的实用技巧,并探讨了通过API Key将其能力集成到自动化工作流中的潜力。

omega的博客 357

PX4/ArduPilot源码克隆提速秘籍:国内镜像与子模块优化全攻略

本文详细介绍了PX4/ArduPilot源码克隆的提速秘籍,包括使用国内镜像源和子模块优化技巧。通过阿木实验室、华为云等国内镜像,克隆速度可提升20倍,同时提供子模块替换和并行编译等实用方法,大幅提升开发效率。

weixin_29251567的博客 524

EasyExcel ExcelGenerateException: Can not close IO问题解决

问题描述: com.alibaba.excel.exception.ExcelGenerateException:CannotcloseIO.

旭东怪的博客 1万+

Ansys CFX Pre 中 RGP 表的高级配置与优化策略

本文深入探讨了Ansys CFX Pre中RGP表的高级配置与优化策略,旨在帮助用户将仿真从“能用”提升至“精准好用”。文章重点解析了如何根据具体仿真场景,科学设定温度压力范围、选择流体类型,并针对相变等复杂工况实施网格加密与分离建表等关键优化技术,以显著提升计算精度与稳定性。

weixin_29216957的博客 1180

EasyExcel导出Excel报错Can not close IO等问题

EasyExcel导出文件失败

wood_sugar的博客 1万+

Unity-TextMeshPro如何扩展材质实现字体Face+Outline流光效果

前言 TexeMeshPro 是Unity的一个Text文本插件,实现了比UGUI的Text,更好看的效果,跟高效的性能,所以深受大家的喜欢,但是再好的插件,也不是万能的,比如我们的策划有个新需求,要我们的VIP的名字比普通玩家有更好看的效果,例如:字体流光,外发光颜色扰动,字体贴图等等。那我们就需要去扩展TextMeshPRo的shader功能了。如下图所示 本文,我就带大家一起来扩展一下:如何扩展TextMeshProUGUI TextMesh原始面板 扩展功能后的面板 扩展TextMeshPro

TxNet 9686

【WSN定位】基于AOA算法实现目标无源定位附matlab代码

1 简介 2 部分代码 clear all; close all; clc;​stations = [0 0 0;20 0 0]; %基站位置​X = -100:100; %生成目标位置Y = X.*sin(X);Z = X+Y;N = length(X);Locations = zeros(N,3);angs = zeros(N,4);for i = 1:N angs(i,:) = Angs(stations*1e3,[X(i),Y(i),Z(i)]*1e3);end​for

qq_59747472的博客 2308

easyExcel/poi导出文件Can not close IO,This archive contains unclosed entries

easyExcel或poi导出文件时发生com.alibaba.excel.exception.ExcelGenerateException: Can not close IO,或者java.io.IOException: This archive contains unclosed entries.此情况只会发生导出一定数据量时,导出数据量很少时无此情况,检查发现服务磁盘、内存均富余可用,文件权限操作无问题异常堆栈 引发原因 有其他线程提前关闭了请求或IO导致生成的Excel临时文件不能正确关闭

weixin_39809420的博客 1万+

操作系统实验四 进程运行轨迹的跟踪与统计(哈工大李治军)

实验4 进程运行轨迹的跟踪与统计 实验目的 掌握 Linux 下的多进程编程技术; 通过对进程运行轨迹的跟踪来形象化进程的概念; 在进程运行轨迹跟踪的基础上进行相应的数据统计,从而能对进程调度算法进行实际的量化评价,更进一步加深对调度和调度算法的理解,获得能在实际操作系统上对调度算法进行实验数据对比的直接经验。 实验内容 进程从创建(Linux 下调用 fork())到结束的整个过程就是进程的生命期,进程在其生命期中的运行轨迹实际上就表现为进程状态的多次切换,如进程创建以后会成为就绪态;当该进程被调度以

leoabcd12的博客 4654

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

看网上查不到这个情况记录下 ExcelWriter excelWriter = null; try ( OutputStream fos = new FileOutputStream(FileUtils.createFile(baseDir, csvName)); ){ //逻辑 ... } catch (Exception e){ log.error("导出出错", e);

sheng_Y_sheng的博客 1万+

基于巴法云物联网云平台构建可视化控制网页(以控制LED为例)

本文基于巴法云物联网云平台构建可视化控制网页,实现了对LED的控制。

kevin1499的博客 4521

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

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

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

weixin_44754681的博客 3181

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

easyexcel 使用遇到“Can not close IO”异常处理

easyexcel 使用遇到“Can not close IO”异常处理easyexcel 使用遇到“Can not close IO”异常处理 easyexcel 使用遇到“Can not close IO”异常处理 出现问题的最初代码如下: 主要是用easyexcel写入一堆excel表,最后在封装到zipOutputStream中输出压缩包文件 for (Map.Entry<String, PromoteLeaderExportDto> entry : map.entrySet()) {

A2132_ad的博客 2万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagic

一 概述 今天使用EasyExcel的时候,突然出现了问题。 问题:java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagic。 二 解决方法 <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> &lt...

calm_encode的博客 7506

easyexcel 导出报“Can not close IO”异常

总结:Can not close IO异常的原因有很多,如果碰到本地正常,生产报错的情况可以看看生产上是不是有网关之类的具有超时机制的东西。

qq_38875964的博客 6814

POI java.lang.NoSuchMethodError: org.apache.poi.util.IOUtils.peekFirst8Bytes(Ljava/io/InputStream;)

使用POI时,出现了这个异常: java.lang.NoSuchMethodError: org.apache.poi.util.IOUtils.peekFirst8Bytes(Ljava/io/InputStream;)[B 错误原因:POI的版本没有一致,比如一个包用了3.13,另一个用了3.15 同样也会造成异常: ClassNotFoundException: org.apac

qijingpei的博客 9571

java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/filemagic

java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/filemagic

weixin_45162019的博客 2270

解决POi冲突总结(当项目存在多个POI依赖时)

项目同时引入了easy excel和自动化测试框架concordion-excel-extension,这两个依赖都制定了内置了POI版本,我的冲突是POI3.14和4.1.2,导致了在easy excel使用时依赖混论,找不到方法。如果可以去掉一个提升版本依赖是最好的,如果不能的情况下那只能找到中间版本,但这样又会增加一个版本依赖。可以将easy excel源代码克隆,官网提供了各个版本的代码,克隆下来之后。其实就是两个POI提供的方法不一样,当依赖混乱时就会找不到对应版本的对应方法。

DiKui1997的博客 8597

使用EasyExcel导出Excel抛异常 Can not close IO

在使用 EasyExcel 中的遇到的一个异常场景。由于不影响线上,而且抛出的异常比较古怪,所以拖了很久,今天终于找到问题原因了,这里做下总结。 Issue1872 背景 首先说明一下我遇到的异常的场景,我这里主要抛出的异常是 [Finalizer] WARN [com.alibaba.excel.ExcelWriter] ExcelWriter.java:342 - [] - Destroy object failed com.alibaba.excel.exception.ExcelGenerateEx

永远相信美好的事情即将发生 3万+

Could not initialize class org.openxmlformats.schemas.drawingml.x2006.main.ThemeDocument

1.java解析execl文件的时候报java.lang.NoClassDefFoundError:Could not initialize class org.openxmlformats.schemas.drawingml.x2006.main.ThemeDocument这个错误,找了网上找了很多解释,是因为类在初始化的时候加载静态方法出错了,后来查看ThemeDocument这个类的源码发现...

qq_31324077的博客 8759
上一篇: vue组件的使用
下一篇: java,给现有pdf加盖公章
RiceTZ
博客等级 码龄10年 7粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值