![](/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.