java.lang.NoSuchFieldError: Factory at org.apache.poi.xddf.usermodel.chart.XDDFChart.<init>(XDDFCha

解决方法:
删除poi-ooxml-schemas jar包
本文出现的问题,是删除了easyexcel下的这个jar包
3、问题定位过程
1、先百度java.lang.NoSuchFieldError这个异常的意思,得知这个跟jar包冲突有关系
2、根据上述的截图,知道冲突的方法所在的jar包是poi-ooml,找到这一行代码,发现是存在这个factory的。
3、怀疑服务上有两个版本的这个jar包导致的,使用的版本不是预期的这个版本找不到这个代码。登录服务器确认,这个jar包只有这一个版本,怀疑点不对。
4、在从代码入手,查看factory所在的类,ThemeDocument
全代码搜索这个类,Idea的快捷键(ctrl+N)发现有两个jar包包含这个类,poi-ooxml-lite和前面提到的poi-ooxml-schemas这个jar包

java.lang.NoSuchFieldError: Factory
	at org.apache.poi.xddf.usermodel.chart.XDDFChart.<init>(XDDFChart.java:152)
	at org.apache.poi.xwpf.usermodel.XWPFChart.<init>(XWPFChart.java:75)
	at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:61)
	at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:661)
	at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:165)
	at org.apache.poi.xwpf.usermodel.XWPFDocument.<init>(XWPFDocument.java:159)
	at com.deepoove.poi.xwpf.NiceXWPFDocument.<init>(NiceXWPFDocument.java:100)
	at com.deepoove.poi.xwpf.NiceXWPFDocument.<init>(NiceXWPFDocument.java:96)
	at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:164)
	at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:132)
	at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:120)
	at com.dbapp.dipper.service.impl.ReportServiceImpl.exportDoc(ReportServiceImpl.java:378)
	at com.dbapp.dipper.service.impl.ReportServiceImpl.export(ReportServiceImpl.java:158)
	at com.dbapp.dipper.service.impl.ReportServiceImpl.exportQueue(ReportServiceImpl.java:194)
	at com.dbapp.dipper.service.impl.ReportServiceImpl$$FastClassBySpringCGLIB$$a42b9a90.invoke(<generated>)
	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
	at com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationInterceptor.invoke(DynamicDataSourceAnnotationInterceptor.java:50)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
	at com.dbapp.dipper.service.impl.ReportServiceImpl$$EnhancerBySpringCGLIB$$e9d1067c.exportQueue(<generated>)
	at com.dbapp.dipper.report.ReportExportJob.run(ReportExportJob.java:20)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值