JXLS的XLSReader是否closures工作簿?

我想知道jxls的XlsReader类是否closures工作簿。 我的代码是这样的:

XLSReader mainReader = ReaderBuilder.buildFromXML(inputStreamXml); mainReader.read(inputStreamXLS, beans); 

在XLSReader中没有像closures的方法。 当试图closures工作簿时,我试图在内部代码中find一些点,但找不到。 这是读取方法的内部实现:

 public XLSReadStatus read(InputStream inputXLS, Map beans) throws IOException, InvalidFormatException{ readStatus.clear(); Workbook workbook = WorkbookFactory.create(inputXLS); for(int sheetNo = 0; sheetNo < workbook.getNumberOfSheets(); sheetNo++){ readStatus.mergeReadStatus(readSheet(workbook, sheetNo, beans)); } return readStatus; } 

有时xls文件被应用程序locking,因为我找不到在我的代码中没有释放资源的任何一点,我不知道问题是否是jxls。 显然XLSReader不closures工作簿。 我的应用程序closuresinputStreams。 应用程序是否也需要closures工作簿?

XLSReader不closures工作簿。 原因是jxls-reader是一个老的模块,创build时POI中没有工作簿的close()方法。

现在我相信应该使用该方法closures工作簿并释放基础文件资源。 所以现在是在jxls-reader问题追踪器中引发bug的好时机