欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java poi写文件报错:SXSSFWorkbook java.io.IOException:权限不够

程序员文章站 2022-05-25 19:02:33
...

使用SXSSFWorkbook.write(bos)写excel文件时,无法生成文件,报错permission denied。
报错的具体位置是SXSSFWorkbook类的write方法,line 515。

File tmpFile;
tmpFile = tmpFile.createTempFile("poi-sxssf-template",".xlsx");

就是Apache POI利用SXSSF写文件时,会产生临时文件,如果是linux系统,会位于/tmp/poifiles文件夹里。所以就是因为该工程的用户这个文件夹没有权限,所以poi无法在该目录生成临时文件,就报错了。
【解决方案】
我是粗暴的给把这个文件夹的权限给了所有用户。
还有更好的解决办法:
不同工程用户启动指定不同临时文件目录。

相关标签: 经验之谈