JDK Tools - jps: JVM 进程状态工具
jps(Java Virtual Machine Process Status Tool) 是 JDK 提供的一个显示当前所有 Java 进程实例的命令。
命令格式
jps [ options ] [ hostid ]
命令参数
-q
只显示本地虚拟机的 pid,而不显示类名称、JAR 文件名和传递给 main 方法的参数。
-m
输出传递给 main 方法的参数。在嵌入式的 JVM 上这输出可能是 null。
-l
输出应用程序主类的完整包名或者是应用程序 JAR 文件的完全路径名。
-v
输出传递给 JVM 的参数。
-V
输出通过 flags 文件传递给 JVM 的参数。
-Joption
向由 jps 调用的 Java 启动器传递参数。例如 -J-Xms48m 设置启动内存为 48M。
实例
a) 一个显示当前所有 Java 进程实例
huey@huey-K42JE:~$ jps 2702 Jps 2548 run.jar 2684 Bootstrap
b) 输出传递给 main 方法的参数
huey@huey-K42JE:~$ jps -m 2548 run.jar start 2909 Jps -m 2684 Bootstrap start
c) 输出应用程序主类的完整包名或者是应用程序 JAR 文件的完全路径名
huey@huey-K42JE:~$ jps -l 2548 /home/huey/huey/java/activemq/apache-activemq-5.5.1/bin/run.jar 2978 sun.tools.jps.Jps 2684 org.apache.catalina.startup.Bootstrap
d) 输出传递给 JVM 的参数
huey@huey-K42JE:~$ jps -v 2991 Jps -Denv.class.path=.:/usr/lib/jvm/java-7-sun/lib:/usr/lib/jvm/java-7-sun/jre/lib -Dapplication.home=/usr/lib/jvm/java-6-openjdk-i386 -Xms8m 2548 run.jar -Xms256M -Xmx256M -Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=logging.properties -Dcom.sun.management.jmxremote -Dactivemq.classpath=/home/huey/huey/java/activemq/apache-activemq-5.5.1/conf; -Dactivemq.home=/home/huey/huey/java/activemq/apache-activemq-5.5.1 -Dactivemq.base=/home/huey/huey/java/activemq/apache-activemq-5.5.1 2684 Bootstrap -Djava.util.logging.config.file=/home/huey/huey/java/tomcat/apache-tomcat-6.0.43/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/home/huey/huey/java/tomcat/apache-tomcat-6.0.43/endorsed -Dcatalina.base=/home/huey/huey/java/tomcat/apache-tomcat-6.0.43 -Dcatalina.home=/home/huey/huey/java/tomcat/apache-tomcat-6.0.43 -Djava.io.tmpdir=/home/huey/huey/java/tomcat/apache-tomcat-6.0.43/temp