问题描述:

项目发布到服务器之后,项目中的导出接口,一直报没有文件或者目录,然而,同样一个打包的war包,在我本地tomcat上启动缺没有任何问题。

解决办法:

1、自己经过层层定位log日志,找到报错的地方竟然是导出代码里用了一个File.createTempFile()这里报错导致的,这样我就非常蒙了,这里报错到底是什么原因导致的?实在没办法咨询同事大佬,大佬给我截图说是创建临时文件的时候会存在环境变量的目录里,报错原因是因为这个临时目录找不到。所以导致的报错

源码图:

File.createTempFile报没有文件或目录

File.createTempFile报没有文件或目录

File.createTempFile报没有文件或目录

2、既然找到了原因,解决起来就很简单了,我们再创建临时文件的时候先去判断临时目录是否存在,如果不存在,自己就创建以下。如下图所示:

File.createTempFile报没有文件或目录

 

相关文章: