poi word转pdf报错java.lang.NoClassDefFoundError :org/apache/poi/POIXMLDocumentPart
困扰我一天的问题终于解决了!!!在网上看到好多种办法给大家简单说一下,不过前两种对于我都不适用,重点是第三种:
1.我之前用的第一种
<!-- <dependency>-->
<!-- <groupId>fr.opensagres.xdocreport</groupId>-->
<!-- <artifactId>org.apache.poi.xwpf.converter.core</artifactId>-->
<!-- <version>${converter.core.version}</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>fr.opensagres.xdocreport</groupId>-->
<!-- <artifactId>org.apache.poi.xwpf.converter.pdf</artifactId>-->
<!-- <version>${converter.pdf.version}</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>fr.opensagres.xdocreport</groupId>-->
<!-- <artifactId>fr.opensagres.xdocreport.itext.extension</artifactId>-->
<!-- <version>${itext.extension.version}</version>-->
<!-- </dependency>-->
这种转换pdf方式真的不靠谱,转换完要不是只有数字,要不就是报以上错误
2.使用poi的itext依赖
<!-- <itextpdf.version>5.5.13.3</itextpdf.version>-->
这个也是导出或者转换完都是数字
3.使用pdf-gae依赖
<dependency>
<groupId>fr.opensagres.xdocreport</groupId>
<artifactId>fr.opensagres.poi.xwpf.converter.pdf-gae</artifactId>
<version>${pdf-gae.version}</version>
</dependency>
<dependency>
<groupId>com.deepoove</groupId>
<artifactId>poi-tl</artifactId>
<version>${poi-tl.version}</version>
</dependency>
这个方法可行就是容易报标题出现的依赖的错误,有的朋友说fr.opensagres.poi.xwpf.converter.pdf-gae改一下这个依赖,添加一个文件,但是我的一直报错就放弃了
最终解决方法:
不用很麻烦,只是依赖冲突问题,换一下版本就行了
我用的这几个版本,有不对之处,朋友可以联系我改进