如何获取生成的 java 进程的 PID
我正在编写几个 java 程序,在完成我想做的任何事情后,需要在单独的 JVM 中杀死/清理。为此,我需要获取我正在创建的 java 进程的 PID。
I am writing several java programs and will need to kill off/clean up in a seperate JVM after I am done with whatever I wanted to do. For this, I will need to get the PID of the java process which I am creating.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
jps -l
可在 Windows 和 Unix 上运行。您可以使用 Runtime.getRuntime().exec 从 Java 程序调用此命令。jps -l
的示例输出如下您可能需要解析它,然后检查完全限定名称,然后从相应的行获取 pid。
jps -l
works both on Windows and Unix. You can invoke this command from your java program usingRuntime.getRuntime().exec
. Sample output ofjps -l
is as followsYou might need to parse this and then check for the fully qualified name and then get the pid from the corresponding line.
您可以尝试执行命令
pidof
来查找您的程序的pid。
它是在 Linux 环境中。
you can try execute command
pidof <program name>
for you to find the pid of your program.
It is in Linux env.
请注意,Java 9 将公开一些与系统无关的方法,例如:
Note that Java 9 is going to expose some system-agnostic methods such as: