首页 > 编程语言 >poi报错org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException笔记

poi报错org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException笔记

时间:2023-10-15 13:03:07浏览次数:38  
标签:lang XSSFFactory java 报错 poi apache org


场景

使用poi时报错org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException 报错信息:

org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException
        at org.apache.poi.xssf.usermodel.XSSFFactory.createDocumentPart(XSSFFactory.java:62)
        at org.apache.poi.POIXMLDocumentPart.read(POIXMLDocumentPart.java:403)

解决方案

这个报错比较明显,反射找不到类XSSFFactory,一般是jar包冲突。
完整的类名应该是:
org.apache.poi.xssf.usermodel.XSSFFactory 没有这个类,或者类名相同,路径名不对都是有问题的,说明没有这个类。

poi相关的poi有三个:poi、poi-ooxml、poi-ooxml-schemas
优先检查这3个即可。
高版本没有这个类了,建议用3.15(比较稳定的版本,且已知是支持XSSFFactory的)。
如果这3个类版本都是3.15了,pom.xml中也没找到其他poi相关配置,还是报错怎办呢?

还可能其他jar包依赖到这个包,再排查下依赖树(见文章 )。
最后发现果然有其他jar包依赖poi的版本是3.9,在那个依赖中排除掉,实测问题解决。


标签:lang,XSSFFactory,java,报错,poi,apache,org
From: https://blog.51cto.com/u_7341513/7871383

相关文章

  • nbcio-boot升级到3.1后出现online表单新增报错       nbcio-boot升级springboot、
        nbcio-boot升级springboot、mybatis-plus和JSQLParser后出现新增online表单的时候报错,如下: 2023-08-1321:18:01.292[http-nio-8080-exec-12][1;31mERROR[0;39m[36mo.jeecg.common.exception.JeecgBootExceptionHandler:69[0;39m-Handlerdispatchfailed;neste......
  • 记录Orcad中报错和解决方法
    本章目的:使用Orcad画原理图总会遇到奇怪的报错,故整理总结 1、根本原因:有元器件没有编号;更新一下位号解决。提示➤ERROR(ORNET-1048):Designisnotannotated.ERROR(ORNET-1006): Netlist failed or may be unusable. 2、根本原因:DesignCache右键CleanupCache,和......
  • grpc服务报错: http2 frame too large
    报错如下:14xxBadRequesterrorreadingserverpreface:http2:frametoolarge其中4xx为客户端报错中的一个具体数字。比如:404/415,仅以报错举例,且出现报错码不固定。但是errormsg的核心内容不变:frametoolarge...这个是因为客户端在没有TLS加密的情况下发送HTT......
  • 从链接器的角度详细分析g++报错: (.text+0x24): undefined reference to `main'
    /usr/bin/ld:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/Scrt1.o:infunction`_start':(.text+0x24):undefinedreferenceto`main'collect2:error:ldreturned1exitstatus  在使用g++编译链接两个C++源文件main.cpp以及VecAdd.cpp时出现了以上......
  • npm安装依赖报错npm ERR code ENOTFOUND npm ERR errno ENOTFOUND
    第一种方法:1:执行:npmconfiggetproxynpmconfiggethttps-proxy如两个返回值都为null,则直接执行第二步,要确保两个返回值都是null才可以,否则就要执行下面的代码:npmconfigsetproxynullnpmconfigsethttps-proxynull2:执行npmconfigsetregistryhttp://regis......
  • mysql报错:You must reset your password using ALTER USER statement before executin
    新安装mysql后,登录后,执行任何命令都会报错:YoumustresetyourpasswordusingALTERUSERstatementbeforeexecutingthisstatement.【解决办法】MySQL版本5.7.6版本以前用户可以使用如下命令:mysql>SETPASSWORD=PASSWORD('Admin2022!');MySQL版本5.7.6版本开始的用户可以使......
  • 关于Cortex-M3报错解决方法总结:Flash Download failed错误
    事情原因:在一次使用ST-LINKv2下载程序时,突然出现Error:FlashDownloadFailed-"Cortex-M3”这个错误,显示没有错误,没有警告。芯片型号接线都没有问题。当时就很摸不着头脑,然后上网查看了一下。原来是因为STM32F103C8T6有64kFlash和20kRAM,tm他们不属于高容量的Flash。所以我改了......
  • (待完善)C/C++ Language Standard
    C89/C90(ANSICorISOC)wasthefirststandardizedversionofthelanguage,releasedin1989and1990,respectivelyC99(ISO/IEC9899:1999)C11(ISO/IEC9899:2011)C18(ISO/IEC9899:2018)ThefirstversionofCwascalled"ASystemProgrammingLang......
  • 在Node.js项目中使用node-postgres连接postgres以及报错指南
    什么是node-postgres官方文档nodepostgres是node.js模块的集合,用于与PostgreSQL数据库接口。它支持回调、promise、async/await、连接池、准备好的语句、游标、流式结果、C/C++绑定、富类型解析等等!就像PostgreSQL本身一样,它有很多功能:本文档旨在让您快速、正确地运行。它还试图......
  • Vue3 + Quasar系列-代码配置以及报错汇总记录(不断更新中)
    1.Vue3+Quasar系列-代码配置打包去掉hash后缀去掉hashhttps://quasar.dev/quasar-cli-vite/developing-pwa/configuring-pwa2.Vue3+Quasar改变主题背景quasar的样式和其他的框架修改不太一样,需要我们使用动态的方式来进行变更,一般来说有两种方案进行主题修改方案一:......