项目有个需求 根据word 和ppt模板自动生成新的word和ppt
问题描述
在生成ppt的过程中报了一个错误Exception in thread "main" java.lang.NoSuchFieldError: Factory
而我重新创建一个项目跑就没有问题
Exception in thread "main" java.lang.NoSuchFieldError: Factory at org.apache.poi.xslf.usermodel.XSLFSlideMaster.(XSLFSlideMaster.java:66) at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:61) at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:661) at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:165) at org.apache.poi.xslf.usermodel.XMLSlideShow. (XMLSlideShow.java:123) at org.apache.poi.xslf.usermodel.XMLSlideShow. (XMLSlideShow.java:137) at com.dfsjsoft.nutzplus.module.template.ppt.PPTdemo01.main(PPTdemo01.java:42)
原因分析:
后来发现是版本冲突,我用word使用的是 poi-tl用的是1.8.0
,而我操作ppt 的时候用的poi和poi-ooxml 都是5.2.2
解决方案:
最后解决方法 把poi-tl换成更高的版本就行了
我换成1.12.0 完美解决



