Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docx到HTML poi java.lang.NoSuchMethodError_Java_Html_Apache Poi_Docx_Nosuchmethoderror - Fatal编程技术网

Docx到HTML poi java.lang.NoSuchMethodError

Docx到HTML poi java.lang.NoSuchMethodError,java,html,apache-poi,docx,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); ...

我想通过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
问题是核心库和xhtml库使用的是3.09版的POI,其中有构造函数XWPFHyperlinkRun(CTHyperlink hyperlink,CTR run,XWPFParagraph p),但3.10版有构造函数XWPFHyperlinkRun(CTHyperlink hyperlink,CTR run,IRUNBODp)

我不能对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

这就解决了这个问题。

到目前为止,我还没有找到与poi 3.17兼容的org.apache.poi.xwpf.converter.core或PDF。您必须恢复到xdocreport 2.0.1和非Apache类
fr.sagres.poi.xwpf.converter.pdf.PdfConverter
pdfooptions,这些选项与3.17 poi套件兼容


我希望它能帮一些人省下我花了几个小时才弄明白这一点。

Apache POI不提供任何称为
org.Apache.POI.xwpf.converter的JAR
-这些JAR到底是从哪里来的?不确定同事是从哪里找到的(在我尝试将其更新为1.0.4版之前,版本1.0.0已经存在了)这不是ApachePOI的一部分,这是一些外部组。您需要与他们联系,要求他们制作新版本/下载其源代码并重新编译。3.9到3.10/3.11是源代码兼容的,但是有一些位(例如这个)不兼容二进制文件,所以您需要重新编译大约一个月前发布的版本,所以如果可以的话,获得与之兼容的版本会更好!poi ooxml 3.15的解决方案也是一样——因此假设它也适用于3.11
POI 3.10Final