java.nio.file.NoSuchFileException: /tmp/undertowXXXXXX报错问题记录解决方案
问题出现场景用户上传附件时提示报错:java.nio.file.NoSuchFileException: /tmp/undertow*****问题分析在 Linux 系统中,Spring Boot 应用以 java -jar 命令启动时,会在操作系统的 /tmp 目录下生成一个 tomcat(或 undertow )临时目录,上传的文件先要转换成临时文件保存在这个文件夹下面。由于临时 /tmp 目
·
问题出现场景
用户上传附件时提示报错:java.nio.file.NoSuchFileException: /tmp/undertow*****
问题分析
在 Linux 系统中,Spring Boot 应用以 java -jar 命令启动时,会在操作系统的 /tmp 目录下生成一个 tomcat(或 undertow )临时目录,上传的文件先要转换成临时文件保存在这个文件夹下面。由于临时 /tmp 目录下的文件,在长时间(10天)没有使用的情况下,系统执行了 tmp 目录清理服务(systemd-tmpfiles-clean.service),导致 /tmp/undertow...8090 文件被清理,然而在上传的时候,undertow 服务器需要创建/tmp/undertow...8090/undertow...upload 临时文件,但是调用 Files.createFile(...) 的时候就会发现找不到父目录,才导致了以上的错误。
解决方案一
yml文件配置:
spring:
servlet:
multipart:
location: /data/upload # 文件上传的临时目录,此目录需要再linux系统中存在
linux服务器: # 若不存在需要创建
创建该目录 mkdir -p /data/upload
解决方案二
-java.tmp.dir=/data/upload_tmp
更多推荐
所有评论(0)