3.13 版中缺少 Apache POI hslf?

Apache POI hslf missing from release 3.13?

我正在尝试使用 java 代码制作 PPT(X) 演示文稿。我已经从 official site 下载了 apache poi 3.13 版本。我已经在我的 class 路径中添加了一个二进制文件,现在当我尝试创建一个演示文稿时 - 它无法编译。

似乎引用了包

import org.apache.poi.hslf.model;

没有找到。然而,

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

工作正常,我可以创建一个 Excel 电子表格文件。

你试过这个依赖吗:

<dependency>
 <groupId>org.apache.poi</groupId>
 <artifactId>poi-ooxml</artifactId>
 <version>3.13</version>
</dependency>

或者只是 "poi" 作为 artifactId?我遇到了同样的问题,更改依赖关系解决了问题。

如标题巧妙的 Apache POI Components Map 中所述,为了使用 HSLF,您需要核心 POI jar POI Scratchpad jar

如果使用 Maven,您需要添加

的依赖项
<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi-scratchpad</artifactId>
  <version>3.13</version>
</dependency>

(或在 OOXML 组件上添加一个,当前也会将暂存器拉入)

如果您使用的是 Apache POI binary download,请将 poi-#.###.jar 文件和 poi-scratchpad-#.###.jar 文件都添加到类路径中