java.io.IOException: The temporary upload location [/tmp/tomcat...] is not valid 可以配置临时文件目录解决

时间:2024-04-03 13:45:14

异常信息

java.io.IOException: The temporary upload location [/tmp/tomcat...] is not valid 可以配置临时文件目录解决 

运行时异常:Failed to parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.8601947821559663767.9998/work/Tomcat/localhost/test] is not valid

大致意思是/tmp/tomcat...这个目录里没有找到对应的目录或文件,应该是服务器清理缓存的时候被清理掉了。


1. 最直接的解决方式是服务器重启项目,但是每次遇到这种问题都要去重启,那就有点烦了。

2. 添加启动参数,指定临时文件存放目录(网上搜集的,没用过,不建议使用)

-Djava.io.tmpdir=/data/upload_tmp  #springboot2.0用这个

-java.tmp.dir=/data/upload_tmp  #springboot1.5用这个

3. 写在配置文件里,固定使用一个临时文件目录(一劳永逸)

在application.yml配置文件的spring下配置临时文件目录:

(针对的是springboot 2.0+)

spring:
    servlet:
        multipart:
            location: /data/upload_tmp #配置临时文件目录,需要在服务器的/data目录下新建一个upload_tmp目录

 

 (针对的是springboot1.5)

spring:
    http:
        multipart:
            location: /data/upload_tmp #配置临时文件目录(location会冒红,提示这个配置已过时)

java.io.IOException: The temporary upload location [/tmp/tomcat...] is not valid 可以配置临时文件目录解决

点击 Use replacement key... 会自动使用最新的属性替换掉

 

参考:

 

https://blog.csdn.net/jian876601394/article/details/94311896

https://www.iteye.com/blog/kanpiaoxue-2437903

https://www.itread01.com/content/1542708266.html

https://www.cnblogs.com/chancy/p/11328794.html

https://blog.csdn.net/qq_35971258/article/details/84867895