java - Docx 到 HTML poi java.lang.NoSuchMethodError

标签 java html apache-poi docx nosuchmethoderror

我想通过poi将docx转换为html。我正在使用以下代码

...
  XWPFDocument document = new XWPFDocument(is);
  XHTMLOptions options = XHTMLOptions.create();
  OutputStream out = new FileOutputStream(htmlFile);
  XHTMLConverter.getInstance().convert(document, out, options);
...

在最后一行我遇到了异常

java.lang.NoSuchMethodError: org.apache.poi.xwpf.usermodel.XWPFHyperlinkRun.<init>(Lorg/openxmlformats/schemas/wordprocessingml/x2006/main/CTHyperlink;Lorg/openxmlformats/schemas/wordprocessingml/x2006/main/CTR;Lorg/apache/poi/xwpf/usermodel/XWPFParagraph;)V

我正在使用以下库:

POI 3.10Final
org.apache.poi.xwpf.converter.core 1.0.4.jar
org.apache.poi.xwpf.converter.xhtml 1.0.4.jar

问题是 core 和 xhtml 库使用版本 3.09 的 POI,其中有构造函数 XWPFHyperlinkRun(CTHyperlink hyperlink, CTR run, XWPFParagraph p),但版本 3.10 有构造函数 XWPFHyperlinkRun(CTHyperlink hyperlink, CTR run, IRunBody p)。

我无法降级 poi,因为我在其他地方使用 3.10 的功能,并且 core/xhtml 库没有比 1.0.4 更新的版本。我尝试使用 docx4j 库,但有一些问题,但我更希望有一个选项可以使用 poi 而不是不同的库。

有办法解决这个问题吗?

感谢您的回答

最佳答案

好的,2015 年 1 月 21 日新版本的库已创建:

org.apache.poi.xwpf.converter.core 1.0.5.jar
org.apache.poi.xwpf.converter.xhtml 1.0.5.jar

与版本兼容

POI 3.10Final

这解决了这个问题。

关于java - Docx 到 HTML poi java.lang.NoSuchMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27479351/

相关文章:

html - 电子邮件背景颜色问题

javascript - 单击时显示谷歌地图不加载

java - 如何使用 Java 中的 Apache POI 从 Excel 读取/写入 XML map ?

java - Apache POI A3 页面在打印预览中显示两页

java - 如何在 telegram bot 中看到来自 java web 应用程序的传入 POST 请求

javascript - 如何在每次点击按钮时发出蜂鸣声

java - 包访问类 |(public 和 protected 之间的区别)

java - 如何使用 Java POI 从工作簿中删除所有公式

java - 加特林验证解码的 JWT token

java - 通过动态传递日期获取总工作日日期