spring boot系统文件上传,报错如下:
org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.xxxx.xxxx/work/Tomcat/localhost/ROOT] is not valid
at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.handleParseFailure(StandardMultipartHttpServletRequest.java:122)
问题分析:spring boot应用服务启动的时候,会在tmp目录下生成一个关于tomcat的文件目录,上传的文件先要转换成临时文件保存在这个文件夹下面。由于临时tmp目录下的文件,在长时间(10天)没有使用的情况下,就会被系统机制自动删除掉,所以长时间没访问的话,再次文件上传这个临时文件的文件夹会被删除。
解决方法:
1、重启服务
2、项目的配置文件中,手动给这个临时文件夹设定目录,这样子就不会被linux删除了
server.tomcat.basedir=/xxxx/xxx