2016-09-23 15 views
21

Tôi đang cố gắng viết một chương trình hoạt động với tài liệu Excel, nhưng định dạng HSSF quá nhỏ so với yêu cầu của tôi. Tôi đang cố gắng chuyển sang XSSF, nhưng tôi vẫn gặp lỗi khi cố gắng sử dụng nó.Lỗi Apache POI tải XSSFWorkbook class

Tôi đã giải quyết được vấn đề đầu tiên bằng cách thêm xmlbeans-2.3.0.jar và dom4j-1.6.jar vào chương trình của mình, nhưng lỗi này sắp xuất hiện, dường như không được giải quyết bằng cách thêm Apache commons jar có sẵn trên trang web Apache.

Các lỗi như sau:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections4/ListValuedMap 
    at hot.memes.ExcelCreator.main(ExcelCreator.java:66) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections4.ListValuedMap 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 1 more 

Trả lời

26

Thêm tập tin commons-collections4-x.x.jar trong xây dựng đường dẫn của bạn và thử lại lần nữa. Nó sẽ hoạt động.

Bạn có thể tải xuống từ https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.0

+1

Tất cả các phụ thuộc POI Apache cũng được bao gồm trong gói tải xuống nhị phân! – Gagravarr

+3

Xem câu trả lời của Anshu Kumar bên dưới. Phiên bản 4.0 là không đủ, bạn cần phiên bản Apache Collections 4.1 để giải quyết vấn đề này. Tôi đa kiểm tra. –

+1

Câu trả lời của bạn hoạt động như một sự quyến rũ! –

6

Hoan hô! Thêm các tệp jar bộ sưu tập commons vào dự án của tôi đã giải quyết vấn đề này. Hai ngón tay cái lên đến Lucky Sharma.

Giải pháp: Thêm tệp commons-collections4-4.1.jar vào đường dẫn xây dựng của bạn và thử lại. Nó sẽ hoạt động.

Bạn có thể tải nó từ https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1

14

commons-collections4-xxjar chắc chắn giải quyết vấn đề này, nhưng Apache đã loại bỏ giao diện ListValuedMap từ commons-Collections4-4.0.jar để sử dụng được cập nhật phiên bản 4.1 nó có các lớp theo yêu cầu và Giao diện.

Tham khảo tại đây nếu bạn muốn đọc Excel (2003 hoặc 2007+) sử dụng mã java.

http://www.codejava.net/coding/how-to-read-excel-files-in-java-using-apache-poi

+3

Hoàn toàn chính xác, phải tải xuống phiên bản này. https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1 –

+3

Điều này đã giúp tôi cũng nhiều thx cho nó. Tôi vừa nâng cấp lên POI 3,15 từ 3,14 và xác định rằng XLSX xuất khẩu của tôi bị hỏng vì điều này. Vì vậy, tôi đã thay đổi phiên bản từ 4.0 đến 4.1 và mọi thứ hoạt động tốt trở lại. –

5

Xin lưu ý rằng 4,0 là chưa đủ kể từ ListValuedMap, đã được giới thiệu trong phiên bản 4.1.

Bạn cần sử dụng this maven repository link cho phiên bản 4.1. Replicated bên dưới để thuận tiện

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 --> 
<dependency> 
    <groupId>org.apache.commons</groupId> 
    <artifactId>commons-collections4</artifactId> 
    <version>4.1</version> 
</dependency> 
Các vấn đề liên quan