正常运行一个多月的项目今天上传文件的时候突然出了个下面的异常:
org.springframework.web.multipart.MultipartException: Could not parse
multipart servlet request; nested exception is java.io.IOException: The
temporary upload location [/tmp/xxxx/work/Tomcat/localhost/ROOT] is not valid
检查发现服务器上的 /tmp
文件夹确实是空的,网上查了一下原因:说是 tmp目录会被系统自动清理。所以才导致找不到路径的问题。
解决方法有三种:
临时性的的解决方法是重启下应用就可以了,不过问题是,后期还会出现这个问题,指标不治之本。
在启动类里注入一个Bean:
@Bean
MultipartConfig() {
MultipartConfigFactory factory =new MultipartConfigFactory();
factory.setLocation("/xxx/xxx");
return factory.createMultipartConfig();
}
也可以修改配置文件。添加下面的配置:
server:
tomcat:
basedir: /xxx/xxx