首页 > 解决方案 > 我在尝试使用 excel 数据时收到 java.lang.ExceptionInInitializerError?

问题描述

File src=new File("C:............xlsx");
      FileInputStream fis=new FileInputStream(src);
      XSSFWorkbook wb=new XSSFWorkbook(fis);
      XSSFSheet sheet1=wb.getSheetAt(0);
      int rowCount=sheet1.getLastRowNum();

我能够在旧的 jdk 版本中成功运行相同的代码,但在最新的 jdk 版本中它会抛出此错误。

java.lang.ExceptionInInitializerError
at org.apache.poi.ss.util.CellReference.<init>(CellReference.java:110)
at org.apache.poi.xssf.usermodel.XSSFCell.<init>(XSSFCell.java:119)
at org.apache.poi.xssf.usermodel.XSSFRow.<init>(XSSFRow.java:77)
at org.apache.poi.xssf.usermodel.XSSFSheet.initRows(XSSFSheet.java:268)
at org.apache.poi.xssf.usermodel.XSSFSheet.read(XSSFSheet.java:231)
at org.apache.poi.xssf.usermodel.XSSFSheet.onDocumentRead(XSSFSheet.java:218)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.parseSheet(XSSFWorkbook.java:454)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.onDocumentRead(XSSFWorkbook.java:419)
at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:184)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:288)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:309)

标签: javaseleniumautomationapache-poi

解决方案


您的问题需要更多详细信息..

但是,从 POI 5.0.0 降级到 POI 4.1.0 可能会为您节省几天的痛苦。我尝试了很多没有用的建议,但降级为我解决了这个问题。

另外,试试这个https://stackoverflow.com/a/62793697/4319941


推荐阅读