异常:Caused by: java.lang.NoSuchMethodError: org.apache.poi.ss.usermodel.CellStyl

1、EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目

        a.POI非常耗内存(大的excel需要上G的内存) 系统容易出现OOM
        b.POI代码也相当复杂,后面在进行维护的时候也不大好操作

2、在往Excel写入数据时出现如下错误

com.alibaba.excel.exception.ExcelGenerateException: java.lang.NoSuchMethodError: org.apache.poi.ss.usermodel.CellStyle.setVerticalAlignment(Lorg/apache/poi/ss/usermodel/VerticalAlignment;)V
 
    at com.alibaba.excel.write.ExcelBuilderImpl.addContent(ExcelBuilderImpl.java:64)
    at com.alibaba.excel.ExcelWriter.write(ExcelWriter.java:161)
    at com.alibaba.excel.ExcelWriter.write(ExcelWriter.java:146)
    at com.alibaba.excel.write.builder.ExcelWriterSheetBuilder.doWrite(ExcelWriterSheetBuilder.java:179)
    at com.atguigu.easyexcel.EasyExcelTest.testWriteExcel(EasyExcelTest.java:32)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: java.lang.NoSuchMethodError: org.apache.poi.ss.usermodel.CellStyle.setVerticalAlignment(Lorg/apache/poi/ss/usermodel/VerticalAlignment;)V
    at com.alibaba.excel.util.StyleUtil.buildDefaultCellStyle(StyleUtil.java:29)
    at com.alibaba.excel.util.StyleUtil.buildHeadCellStyle(StyleUtil.java:49)
    at com.alibaba.excel.write.style.HorizontalCellStyleStrategy.initCellStyle(HorizontalCellStyleStrategy.java:43)
    at com.alibaba.excel.write.style.AbstractCellStyleStrategy.afterSheetCreate(AbstractCellStyleStrategy.java:63)
    at com.alibaba.excel.util.WriteHandlerUtils.afterSheetCreate(WriteHandlerUtils.java:86)
    at com.alibaba.excel.context.WriteContextImpl.initSheet(WriteContextImpl.java:158)
    at com.alibaba.excel.context.WriteContextImpl.currentSheet(WriteContextImpl.java:131)
    at com.alibaba.excel.write.ExcelBuilderImpl.addContent(ExcelBuilderImpl.java:53)
    ... 26 more
 
 
 
Process finished with exit code -1


原因可是:jar包不兼容

在解决异常之前使用的jar包依赖是这个样子的。

解决异常是使用如下依赖:

可以将easyPoi和apache的poi版本都提高一点,都提到4.4.0就没什么问题了。

到此结束!!!
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值