原有springboot打的jar包在aaa用户下/home/aaa目录中可以正常生成excel,但是挪到bbb用户/home/bbb目录下报错ioexception permission denied,
查看了用户都是bbb,赋权了,但是还是报错,
查了下,是因为生成excel使用了poi的包,POI 生成文件时会根据“java.io.tmpdir”配置自动生成 {java.io.tmpdir}/poifiles/,由于Linux上是生成到 /tmp/poifiles,此目录没有权限,生成Excel时候,需要缓存到系统临时目录,给/tmp/poifiles目录下bbb赋权之后,生成正常
本文讲述了在Linux系统中,一个SpringBoot应用程序在不同用户目录下生成Excel文件时遇到的权限问题。当应用从aaa用户目录迁移到bbb用户目录时,由于 poi 库生成临时文件至 /tmp/poifiles 目录导致权限不足,从而抛出IOException。解决方案是为 /tmp/poifiles 赋予bbb用户相应的权限,确保应用能够正常缓存到系统临时目录。
1万+

被折叠的 条评论
为什么被折叠?



