我正在Oracle Agile 9.3.0.2中构建Java Px。
我的Px涉及与两种格式的Excel文件(HSSF和XSSF)的交互。
我正在使用Apache POI库进行excel文件处理。
但这条线路的“java.lang.IncompatibleClassChangeError”:
工作簿工作簿= WorkbookFactory.create(ip);
其中 ip 是excel文件的输入流。
当我尝试访问任何HSSF电子表格文件时。的(XLS)
Px适用于XSSF电子表格文件。的(。XLSX)
请帮助!!!!
答案 0 :(得分:1)
您的类路径上有两个不同的Apache POI副本。您需要确保所有POI罐(普通,暂存器,ooxml等)来自同一版本。请参阅POI FAQ,了解如何检查生产中实际使用的jar文件。
答案 1 :(得分:0)
您可以检查应用程序服务器本身是否捆绑了poi-*.jar
个文件?如果有,它可能会导致类似的问题。也许在压缩文件中使用TotalCommander进行搜索以及Workbook.class
或WorkbookFactory.class
以确保在任何其他jar中找不到这些类。