[alibaba/easyexcel]应用poi版本低于3.1.7的情况下,easyexcel不能使用

2024-05-21 263 views
3

easyexcel 版本2.2.6。poi版本3.10 poi版本太低但是不能升级,导致下面方法报错EasyExcel.write(fileName).withTemplate(templateFileName).sheet().doFill(map); 有什么解决方法吗? Caused by: java.lang.NoClassDefFoundError: org/apache/poi/util/DefaultTempFileCreationStrategy at com.alibaba.excel.util.FileUtils.createPoiFilesDirectory(FileUtils.java:138) at com.alibaba.excel.write.ExcelBuilderImpl.(ExcelBuilderImpl.java:30) at com.alibaba.excel.ExcelWriter.(ExcelWriter.java:47) at com.alibaba.excel.write.builder.ExcelWriterBuilder.build(ExcelWriterBuilder.java:130) at com.alibaba.excel.write.builder.ExcelWriterBuilder.sheet(ExcelWriterBuilder.java:146) at com.alibaba.excel.write.builder.ExcelWriterBuilder.sheet(ExcelWriterBuilder.java:134) 原因 低版本poi缺失DefaultTempFileCreationStrategy对象等

回答

9

请问这个问题是怎么解决的 我的poi版本是3.15 也遇到这个问题

2

我也是这个问题。我的poi 版本3.14. 请问下有解决了的嘛,不能 排除掉原先的poi3.14,因为别的地方有用到。有什么好的解决方案吗。

9

建议升个级到3.17 暂时不考虑往下兼容。

8

使用maven-shade-plugin @cs950809 @qinzeduomoxiong

2

这边我升级到了3.17的POI,但是还是出现了这个问题,请问是poi版本和easyexcel版本之间的冲突吗

3

这边我升级到了3.17的POI,但是还是出现了这个问题,请问是poi版本和easyexcel版本之间的冲突吗

升级后应该不会有该问题,我使用maven-shade-plugin也是为了做升级,让两个poi版本共存。

3

easyexcel 2.2.7 ,升级org.apache.poi版本到3.17可用

2

fr.opensagres.xdocreport 依赖 升级到2.0.1 或者其他高版本,以此为基础将poi升级到高版,避免和EasyExcel冲突