如何在servlet中创建/ tmp中的临时文件?

时间:2014-06-08 18:04:49

标签: java tomcat servlets ubuntu-12.04 temporary-files

我在Servlet中使用File.createTempFilecreateTempFile版本只有前缀和后缀但没有File参数。)

根据javadoc,这应该在系统的默认临时目录(在我的情况下为/tmp)中创建一个文件。而是在/tmp/tomcat7-tomcat7-tmp/

中创建文件

为什么奇怪的临时文件位置以及如何将其更改为系统的“普通”临时文件位置?

1 个答案:

答案 0 :(得分:2)

Java使用系统属性java.io.tmpdir来获取当前的临时目录。据我所知,运行tomcat的其中一个脚本将此变量设置为您提到的内容。如果你很重要,你应该重写这个变量。尝试grep tomcat脚本,找到这个地方并覆盖它。在运行tomcat时,你可以设置JAVA_OPTS=$JAVA_OPTS java.io.tmpdir=/tmp或类似的东西。 (显然语法取决于您的操作系统)。