4

我注意到我的 Linux 机器中有很多文件/tmp/.java_pid<...>。该file命令说它们是套接字。假设它们是由 Java 创建的,我想知道为什么 Java 不清理它们。如何让 Java 清理它们或不创建它们?

4

2 回答 2

7

这些文件由 JVM 创建以支持调试。它是attachapi 的一部分。

如果您不希望 java 创建它们,请在不启用调试的情况下启动 java 应用程序。

如果没有具有相应 pid 的 jvm,您可以安全地删除它们……这是一个非常适合 cron 作业的任务。

一点点bash:

for file in /tmp/.java-[0-9]*; do
  [ -d /proc/${file#*.java-} ] || rm -f $file
done
于 2013-04-17T15:48:13.343 回答
2

pid 文件通常是应用程序存储其进程 ID 的位置,因此用户可以在之后轻松地终止进程。这些应用程序应在关闭时删除这些文件。

我不会太担心这些文件,除非您看到越来越多的文件并且它们没有被删除,那么这可能是一个迹象表明您的应用程序没有正确关闭,

于 2013-04-17T15:40:34.720 回答