-
添加依赖
- poi 版本必须大于3.14(我用的是3.17)
- ooxml 版本必须大于1.2(我用的是1.3)
<!-- 模版引擎用到的jar包 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>com.deepoove</groupId>
<artifactId>poi-tl</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
<version>1.3</version>
</dependency>
注意: 你可能遇到以下几个问题
- poi版本过低:使用 poi 3.14 以上
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader
at org.openxmlformats.schemas.wordprocessingml.x2006.main.DocumentDocument$Factory.parse(Unknown Source)
at org.apache.poi.xwpf.usermodel.XWPFDocument.onDocumentRead(XWPFDocument.java:136)
at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:166)
at org.apache.poi.xwpf.usermodel.XWPFDocument.<init>(XWPFDocument.java:125)
at com.deepoove.poi.NiceXWPFDocument.<init>(NiceXWPFDocument.java:85)
at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:129)
at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:110)
at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:78)
at com.deepoove.poi.XWPFTemplate.compile(XWPFTemplate.java:74)
at core.JingzhouDayReportDaemon.saveData2Word(JingzhouDayReportDaemon.java:187)
at core.JingzhouDayReportDaemon.run(JingzhouDayReportDaemon.java:45)
at core.JingzhouDayReportDaemon.main(JingzhouDayReportDaemon.java:289)
Caused by: java.lang.ClassNotFoundException: org.apache.poi.POIXMLTypeLoader
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:35