在导出excel时,报
java.lang.NoClassDefFoundError: org/apache/commons/io/output/UnsynchronizedByteArrayOutputStream
1.1解决方案: 查看项目中的commons-io依赖时那个版本,
1.1.1 如果是 groupId ,如果是 org.apache.commons ,那就改为 commons-io, ,版本也改了 2.11.0, 才对
<!--未导入poi依赖之前, 原来项目使用的依赖-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
1.1.2 或者把原来项目 中的下面的这个依赖注释了也行
<!-- excel工具 07版及以后的版本 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.3</version>
</dependency>
<!--导入poi依赖之后, 注释了原来项目中的这个依赖
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>-->
<!-- excel工具 07版及以后的版本 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.3</version>
</dependency>
1.2 说明: 在 poi-ooxml的5.1.0(包含)之后的版本中已经包含了这个下面的依赖了
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
1.3 说明
在 groupId: org.apache.poi 中
public class ByteArrayOutputStream extends OutputStream {
如下图:
// 在 groupId: commons-io 中
// 在 <groupId>commons-io </groupId>中
public class ByteArrayOutputStream extends AbstractByteArrayOutputStream{
如下图:
引用: https://mkyong.com/struts/java-lang-noclassdeffounderror-orgapachecommonsiooutputdeferredfileoutputstream/
引用: https://www.cnblogs.com/sunAnqing/p/15508664.html