java.io.IOException: The temporary upload location [/tmp/tomcat.XX/…] is not valid - 代码日志

java.io.IOException: The temporary upload location [/tmp/tomcat.XX/…] is not valid

问题原因:
程序中存在对MultipartFile类型操作(如上传文件),服务端将文件流临时保存在文件夹里(具体文件夹由spring boot在启动的时候新建,默认未/tmp文件夹)。
/tmp文件夹的有自动cleanup机制,/tmp文件夹的文件10天未更新会被移除,/var/tmp文件夹的文件是30天。

解决方案:

1: 指定目录,防止文件夹被自动删除。

@Configuration
public class UploadFileConfigration {
 /**
 * 文件上传临时路径
 */
 @Bean
 MultipartConfigElement multipartConfigElement() {
 MultipartConfigFactory factory = new MultipartConfigFactory();
 factory.setLocation("/data/tmp");
 return factory.createMultipartConfig();
 }
}

解决方案 2: 配置文件中指定Tomcat默认日志、dump等文件目录。

server.tomcat.basedir=/data/tmp

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java.io.IOException: The temporary upload location [/tmp/tomcat.XX/…] is not valid