[英]java.lang.NoClassDefFoundError: org/apache/poi/xssf/usermodel/XSSFWorkbook
[英]why I am getting java.lang.AbstractMethodError: org.apache.poi.xssf.usermodel.XSSFCellStyle.getFillBackgroundColorColor()?
我在下一行的Java中收到此错误:
Color cellColor = (row.getCell(1).getCellStyle().getFillBackgroundColorColor());`
java.lang.AbstractMethodError:org.apache.poi.xssf.usermodel.XSSFCellStyle.getFillBackgroundColorColor()Lorg / apache / poi / ss / usermodel / Color;
我还检查了WEB-INF/lib
文件夹,只有两个Jars ojdbc5.jar
和ojdbc6.jar
我不知道为什么在使用getFillBackgroundColorColor()
时出现此错误。
基本上,我想获取单元格的颜色。 有人可以帮我解决问题吗?
AbstractMethodError通常意味着依赖项之间存在混淆。 也许您缺少poi-ooxml或它有多个版本?
拥有WEB-INF/lib
意味着您正在部署WAR文件。 在这种情况下,库可以位于几个不同的位置,例如$TOMCAT_HOME/lib
。 检查您的类路径,例如通过打印其中的所有URL:
ClassLoader cl = ClassLoader.getSystemClassLoader();
URL[] urls = ((URLClassLoader) cl).getURLs();
for (URL url : urls) {
System.out.println(url.getFile());
}
并确保POI的版本正确。 如果您使用的是Tomcat,则可以查看本文 。
附带说明一下,您可能不应该发送ojdbc5.jar
,它是非常老的JDK和Oracle DB的非常老的驱动程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.