在Oracle Agile 9.3.0.2 for Linux中运行时,Apache POI中的java.lang.CompatibileClassChangeError
我正在Oracle Agile 9.3.0.2中构建一个Java Px 我的Px涉及与两种格式(HSSF和XSSF)的Excel文件的交互 我正在使用ApachePOI库进行excel文件处理 但是这一行我得到了“java.lang.CompatibleClassChangeError”: 工作簿=WorkbookFactory.create(ip)强> 其中,ip是excel文件的输入流 当我尝试访问任何HSSF电子表格文件时(.xls) Px适用于XSSF电子表格文件(.xlsx)在Oracle Agile 9.3.0.2 for Linux中运行时,Apache POI中的java.lang.CompatibileClassChangeError,java,oracle11g,apache-poi,Java,Oracle11g,Apache Poi,我正在Oracle Agile 9.3.0.2中构建一个Java Px 我的Px涉及与两种格式(HSSF和XSSF)的Excel文件的交互 我正在使用ApachePOI库进行excel文件处理 但是这一行我得到了“java.lang.CompatibleClassChangeError”: 工作簿=WorkbookFactory.create(ip) 其中,ip是excel文件的输入流 当我尝试访问任何HSSF电子表格文件时(.xls) Px适用于XSSF电子表格文件(.xlsx) 请帮忙 您能
请帮忙 您能检查一下应用服务器本身是否捆绑了
poi-*.jar
文件吗?如果有的话,可能会导致类似的问题。可以使用TotalCommander在压缩文件中搜索Workbook.class
或WorkbookFactory.class
,以确保在任何其他JAR中都找不到这些类。在类路径上很可能有两个不同的Apache POI副本。您需要确保所有POI jar(普通、草稿行、ooxml等)都来自同一版本。有关如何检查生产中实际使用的jar文件的信息,请参阅。您看过吗?我已经检查了所有可能的情况,但没有结果。您是否尝试过常见问题解答建议的代码?你会惊讶地发现,有那么多人解决了这个问题——他们没有意识到的罐子通常就是罪魁祸首。。