![](/img/trans.png)
[英]java.lang.ClassNotFoundException: org.apache.commons.io.output.DeferredFileOutputStream…Getting this exception while trying to upload a file
[英]java.lang.ClassNotFoundException: org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream on using HSSFWorkbook
我正在尝试实现从 .xls 文件中读取。 我有以下代码:
FileInputStream file = null;
Workbook workbook = null;
try {
file = new FileInputStream(System.getProperty("user.home") + "/Downloads/" + fileName);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if (fileName.endsWith(".xls")) {
try {
**workbook = new HSSFWorkbook(file);**
} catch (IOException e) {
e.printStackTrace();
}
此标记的代码行崩溃。
我在 pom.xml 中导入:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.0</version>
</dependency>
但我得到了错误:引起:java.lang.ClassNotFoundException:org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream
我将不胜感激。 谢谢。
添加
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.4</version>
</dependency>
给你pom
将依赖项更改为
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
我也使用了 5.2.0 版本,并且遇到了同样的错误并进行了更改以修复它。
When I read excel to XSSFWorkbook, it prompt error message that "commons.io.output.UnsynchronizedByteArrayOutputStream" finally fixed it by downgrad the version of poi from 5.2.3 to 5.2.2
它对我有用
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.2.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.2</version>
</dependency>
它通过消除这种依赖对我有用
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.4</version>
</dependency>
我最近将 Apache POI 升级到 5.2.3 并且遇到了相同的 ClassNotFoundException。 由于应用程序在升级前运行良好,所以我很快做了三件事来调试:
一旦我将最新可用的 Apache Commons IO 2.11.0 添加到我的 maven pom.xml 并重建应用程序,问题就解决了。 我希望这有帮助!
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.