JDK 的 bin 目录下为 Java 开发人员提供了很多实用的小工具,很多场景下都会用到它们,比如:打包、部署、签名、调试、监控、运维等。本文介绍其中一款:
jps (JVM Process Status Tool): 虚拟机进程状况工具
功能
比较单一,列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main Class,main() 函数所在的类)名称以及这些进程的本地虚拟机唯一 ID(LVMID)。
LVMID 和 PID
LVMID (Local Virtual Machine Identifier): 本地虚拟机进程的唯一 ID
PID (Process Identifier): 操作系统的进程 ID
对于本地虚拟机进程来说,LVMID 与 PID 是一致的。
命令格式
1 | jps [ options ] [ hostid ] |
options
选项 | 作用 |
---|---|
-q | 只输出 LVMID,省略主类的名称 |
-m | 输出虚拟机进程启动时传递给主类 main() 函数的参数 |
-l | 输出主类的全名,如果进程执行的是 JAR 包,则输出 JAR 路径 |
-v | 输出虚拟机进程启动时的 JVM 参数 |
hostid
jps 还可以通过 RMI 协议查询开启了 RMI 服务的远程虚拟机进程状态,参数 hostid 为 RMI 注册表中注册的主机名。
执行样例
1 | $ jps -l |