springboot报错说 Failed to parse multipart servlet request; nested exception is java.io.IOException
问题:
今天在改 BUG 的时候, 发现报错了这样一段话
Failed to parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.1428942566812653608
这是啥呀?
分析原因:
经过对异常描述中的解读发现
1: 这个是一个 IO 异常
2: 同时是因为文件上传引起
3: 在其中我们看到了 Tomcat 单词, 说明这和 Tomcat 有关
结果:
应该有人不知道, 在 tomcat 接收 http POST 请求的时候, 他是需要有一个临时目录来存储这个数据的, 因为他是存放在 /temp 目录下的可能会因为一些原因被清除, 所以会报错 IO 异常
解决方案:
1: 重启你的项目就可以了 (我采取的就是这个, 因为 tomcat 在重启的时候会检查环境, 如果不存在这个目录, 他就会自动创建)
2: 在 application.yml 中配置上传目录的本地的临时存放位置, 并重启项目
3: 添加启动参数 -java.tmp.dir=/path/to/application/temp/,并重启
作者:彼岸舞
时间:2020\10\09
内容关于:工作中用到的小技术
本文来源于网络,只做技术分享,一概不负任何责任