1.为什么会出现这个异常呢?
springboot启动时会创建一个/tmp/tomcat.*/work/Tomcat/localhost/ROOT的临时目录作为文件上传的临时目录,但是该目录会被linux操作系统在n天之后自动清理掉。这个临时目录。
2.问题解决方案
2.1方法1
重启项目,会重新创建这个目录
2.2方法2
在yml 配置以下内容 自定义目录
server.tomcat.basedir=/tmp/tomcat
2.3.方法3
注入bean,手动配置临时目录
@Bean
MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
factory.setLocation("/tmp/tomcat");
return factory.createMultipartConfig();
}
2.4.方法4
配置不删除tmp目录下的tomcat
vim /usr/lib/tmpfiles.d/tmp.conf
添加一行
x /tmp/tomcat.*