【问题标题】:NoClassDefFoundError while trying to create XSSFWorkbook()尝试创建 XSSFWorkbook() 时出现 NoClassDefFoundError
【发布时间】:2021-11-11 17:05:28
【问题描述】:

我一直在尝试使用 poi 非常简单地操作电子表格中的单元格,但是每次我尝试构建我的项目时都会出现相同的错误。

这里每次都会出现这种情况XSSFWorkbook workbook = new XSSFWorkbook();

以下是下载的库:

org/apache/logging/log4j/LogManager 错误起初是别的东西之前,我发现通过安装依赖项,错误略有改变,但从未消失。

我应该提一下,我是 java 的初学者,我不使用 Maven。 我花了很多时间寻找这个问题的解决方案,但没有一个有帮助,很多人提到使用 Maven 但这对我来说并不是一个真正的选择,因为我以前从未使用过 Maven,我认为这是在不久的将来要学习的东西.

如果有任何 poi 的替代品,那也太好了,因为我真的只想在单元格中输入数字,而无需阅读电子表格或自定义它们。

谢谢。

编辑

感谢@PJFanning 帮助我解决了问题。这确实是每个所需依赖项及其所需版本的问题。

【问题讨论】:

  • 我提到了,我没有。
  • 您是否尝试添加所有listed dependencies of Apache POI? 如果没有,当您尝试遵循文档并执行此操作时会发生什么? (尽管从长远来看,使用包管理器为您做到这一点要容易得多......)
  • POI 文档有点过时了。最近的 POI 5.1.0 版本引入了 Log4J v2 作为日志框架 - 请参阅 poi.apache.org/components/logging.html - 我将尝试更新其他 POI 页面(仍然引用旧的日志框架)
  • 你需要 xmlbeans 5.0.2 - 如果你学习如何使用 gradle 或其他构建工具,你会让每个人的生活变得更轻松 - POI 5.1.0 明确依赖于 xmlbeans 5.0.2。
  • don't upload text as image。编辑您的问题以包含文本形式的所有信息 - 考虑使用编辑器的格式选项。另见How to Ask

标签: java apache-poi noclassdeffounderror xssf


【解决方案1】:

我建议考虑使用 maven 或 gradle。

上次我做了一个项目,我阅读了几种类型的表格

这些是依赖项:

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>5.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>5.1.0 </version>
</dependency>
<dependency>
    <groupId>com.github.miachm.sods</groupId>
    <artifactId>SODS</artifactId>
    <version>1.4.0</version>
</dependency> 

【讨论】:

猜你喜欢
  • 2021-01-30
  • 2019-12-05
  • 1970-01-01
  • 1970-01-01
  • 2016-05-08
  • 1970-01-01
  • 2013-05-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多