Java Jxls错误:无法加载XLS变压器。请确保Transformer实现位于类路径中
这个问题已经问过一次了,但没有人给出一个绝对的解决方案。 我试图生成一个xls文件从现有的模板,但我得到了一个错误,我不知道如何面对 我的代码: 字符串nombre=“Manuel”Java Jxls错误:无法加载XLS变压器。请确保Transformer实现位于类路径中,java,excel,jxl,jxls,Java,Excel,Jxl,Jxls,这个问题已经问过一次了,但没有人给出一个绝对的解决方案。 我试图生成一个xls文件从现有的模板,但我得到了一个错误,我不知道如何面对 我的代码: 字符串nombre=“Manuel” 非常感谢 请确保类路径中有jxls poi和Apache poi JAR(如果您计划使用Apache poi)好的,如果您使用maven,在maven构建时,maven可能会破坏excel文件 JXLS报告的异常可能是不明确的,它实际上创建了一个excel文件异常 您可以这样做: <resources>
非常感谢 请确保类路径中有jxls poi和Apache poi JAR(如果您计划使用Apache poi)好的,如果您使用maven,在maven构建时,maven可能会破坏excel文件 JXLS报告的异常可能是不明确的,它实际上创建了一个excel文件异常 您可以这样做:
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
<excludes>
<exclude>template/*.*</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources/</directory>
<filtering>false</filtering>
<includes>
<include>template/*.*</include>
</includes>
</resource>
</resources>
src/main/resources/
真的
模板/**
src/main/resources/
假的
模板/**
在使用maven配置文件和资源筛选时,我也遇到了同样的问题。通过关闭jxls excel模板的资源筛选,修复了此问题
<resource>
<directory>src/main/resources/</directory>
<filtering>false</filtering>
<includes>
<include>**/*.xlsx</include>
</includes>
</resource>
src/main/resources/
假的
**/*.xlsx
确保jxls
和jxls poi
在您的maven pom中,
还要检查模板文件是否在类路径中
我遇到了这个问题,我的代码如下:
InputStream is = JxlsTest.class.getResourceAsStream("/template.xlsx");
我的问题是我错误地键入了
/template.xlsx
作为/template.xls
,jxls找不到模板xls文件,因此引发了此错误。在我的情况下,我的类路径中有不兼容的apache poi版本jxlspoi:1.0.15
使用poi:3.17
,而我使用poi:3.9
将poi更改为3.17解决了我的问题。奇怪的是,在整个互联网上,这个问题仍然没有答案。首先,您只需要将
ExportExcelServlet.class.getResourceAsStream
替换为FileInputStream是的,我已经安装了所有需要的文件,您认为这可能与模板文件位置有关吗?不,我认为这与模板位置无关。您还可以发布完整的错误堆栈跟踪吗?已解决。这与maven Dependences的安装有关,我添加了一些额外的依赖项,使其过度压缩。无论如何,谢谢。我不是OP,但答案提供了正确的提示:我需要安装ApachePOI(事实上很明显)。谢谢
<resource>
<directory>src/main/resources/</directory>
<filtering>false</filtering>
<includes>
<include>**/*.xlsx</include>
</includes>
</resource>
InputStream is = JxlsTest.class.getResourceAsStream("/template.xlsx");