刚更新完版本就炸了:java.lang.NoClassDefFoundError: org/apache/commons/io/output/UnsynchronizedByteArrayOutputStream

在导出EXECL表格的时候报:

java.lang.NoClassDefFoundError: org/apache/commons/io/output/UnsynchronizedByteArrayOutputStream

 

原因是:版本在5.1.0的时候导出EXECL会出错,报加载不到当前类

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

 

解决办法一(降版本):我们只需要把poi的版本降低到5.0.0即可解决上述问题

<dependency>
   <groupId>org.apache.poi</groupId>
   <artifactId>poi</artifactId>
   <version>5.0.0</version>
</dependency>

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

 

解决办法二(升版本):我们需要把commons-io和log4j-api的版本升级到下面版本即可解决上述问题

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.11.0</version>
</dependency>
<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.17.1</version> </dependency>

 

 

posted @ 2021-11-04 16:10  蛋挞小子  阅读(17083)  评论(2编辑  收藏  举报