我正在使用docx4j 3.3.0,当我运行下面的代码时,我得到一个ClassNotFoundException。
OutputStream os = new FileOutputStream(file);
FOSettings settings = Docx4J.createFOSettings();
settings.setWmlPackage(wmlPackage);
settings.setApacheFopMime("images/png");
Docx4J.toFO(settings, os, Docx4J.FLAG_EXPORT_PREFER_XSL);
java.lang.ClassNotFoundException: org.docx4j.convert.out.fo.FOExporterXslt from [Module "org.docx4j-compat:main" from local module loader @19a1b0af (finder: local module finder @4656be4e (roots: C:\newton\jboss\modules,C:\newton\jboss\modules\system\layers\base))]
我确定我错过了依赖,但我不知道是什么。
答案 0 :(得分:2)
在docx4j 3.3.0中,通过FO导出移动到一个单独的项目:
https://github.com/plutext/docx4j-export-FO
如果您使用的是docx4j zip分发版,请在optional / export-fo
中添加jar如果您使用的是maven,请添加:
<groupId>org.docx4j</groupId>
<artifactId>docx4j-export-fo</artifactId>
<version>3.3.0</version>
答案 1 :(得分:0)
使用此:-
settings.setApacheFopMime(MimeConstants.MIME_PNG);
我认为问题在于您有“ images / png”,而不是“ image / png”