在我的tomcat临时文件夹中,我有2.5Gb的+~JF****.tmp
文件,文件大小为~750K或~23M
$ pwd
/var/cache/tomcat7/temp
$ ls -lt
-rw------- 1 tomcat tomcat 23278008 06:47 5 Th08 +~JF2247741302721424357.tmp
-rw------- 1 tomcat tomcat 773236 06:47 5 Th08 +~JF2626850872018060030.tmp
-rw------- 1 tomcat tomcat 750984 06:47 5 Th08 +~JF6955350201064404318.tmp
-rw------- 1 tomcat tomcat 23278008 06:34 5 Th08 +~JF5760450811263657816.tmp
...
我找你找到了这个问题,但我找到的只是Jasper Report字体问题对我来说没有意义,我的项目没有使用Jasper。
你知道为什么吗?
感谢
答案 0 :(得分:0)
我们正面临类似的问题,我想分享一下我发现的东西:
java.awt.Font.createFont(int i, java.io.InputStream in)
生成一个名称为+~XXXX.tmp
(其中XXXX是一个长数字)的临时文件。
JVM结束后,所有这些文件都将被删除。
当JVM突然结束(因为它不会删除临时文件)或长时间运行的JVM(即Tomcat生产服务器)时,就会出现问题。
我们所做的只是更改字体创建方法并使用:
java.awt.Font.createFont(int i, java.io.File f)
通过这种方法,不再创建临时文件。