4.1 jps

2017-02-14 09:59:40 6,494 0

jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。

jps存放在JAVA_HOME/bin/jps,使用时为了方便请将JAVA_HOME/bin/加入到Path.

$> jps

23991 Jps

23789 BossMain

23651 Resin

比较常用的参数:

-l 输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名

$> jps -l

28729 sun.tools.jps.Jps

23789 com.asiainfo.aimc.bossbi.BossMain

23651 com.caucho.server.resin.Resin

-v 输出传递给JVM的参数

$> jps -v

23789 BossMain

28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/data/aoxj/jdk15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m

23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl  -Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl

-m 输出传递给main 方法的参数,在嵌入式jvm上可能是null

$> jps -m

28715 Jps -m

23789 BossMain

23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log

这些命令也可以联合使用,如jps -lmv

$> jps -lmv

25611 sun.tools.jps.Jps -lmv -Denv.class.path=.:/usr/local/jdk8/lib/rt.jar:/home/tianshouzhi/download/clojure-1.7.0/clojure-1.7.0.jar -Dapplication.home=/usr/local/jdk8 -Xms8m

13789 website-0.0.1-SNAPSHOT.jar -Xms128m -Xmx512m -Xmn128m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8 -XX:+DisableExplicitGC -XX:-OmitStackTraceInFastThrow -Djava.ext.dirs=/usr/local/jdk8/jre/lib/ext

注:jps命令有个地方很不好,似乎只能显示当前用户的java进程,要显示其他用户的还是只能用unix/linux的ps命令。

更多用法:请参考sun官方文档 

http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jps.html