我在Linux机器上发现了很多文件/tmp/.java_pid<...>
。 file
命令表示它们是套接字。假设它们是由Java创建的,我想知道为什么Java不会清理它们。如何让Java清理它们或者不创建它们?
答案 0 :(得分:4)
这些文件由JVM创建以支持调试。它是attach
api的一部分。
如果你不想让java创建它们,那么启动java应用程序而不启用调试。
如果没有带有相应pid的jvm,那么你可以安全地删除它们......这个任务非常适合于cron作业。
一点点bash:
for file in /tmp/.java-[0-9]*; do
[ -d /proc/${file#*.java-} ] || rm -f $file
done
答案 1 :(得分:2)
我不会太担心这些文件,除非你看到越来越多的文件并且它们没有被删除,那么它可能是一个告诉故事,你有一个没有正确关闭的应用程序,< / p>