Apache POI 加载 XSSFWorkbook 类时出错

2022-08-31 16:53:59

我正在尝试编写一个与Excel文档一起使用的程序,但是HSSF格式对于我的要求来说太小了。我正在尝试迁移到XSSF,但在尝试使用它时不断收到错误。

我设法通过将xmlbeans-2.3.0.jar和dom4j-1.6.jar添加到我的程序中来解决前两个问题,但现在这个错误即将出现,这似乎无法通过添加Apache网站上提供的Apache commons jar来解决。

错误如下:

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

答案 1

在构建路径中添加 commons-collections4-x.x.jar 文件,然后重试。它会起作用。

您可以从 https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.0 下载


答案 2

commons-collections4-x.x.jar绝对可以解决这个问题,但Apache已经从commons-Collections4-4.0中删除了Interface ListValuedMap.jar因此使用更新的4.1版本,它具有所需的类和接口。

如果您想使用java代码阅读Excel(2003或2007 +),请参阅此处。

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


推荐