jps(JavaVirtual Machine Process Status Tool)是jdk提供的一个查看当前Java进程的小工具, 非常简单实用。在控制台执行jps命令和java -classpath %JAVA_HOME%/lib/tools.jar sun.tools.jps.Jps命令是等价的,即jps.exe只是这个命令的一层包装。
jps [options ] [ hostid ]
[options]选项:
-q:仅输出VM标识符,不包括classname,jar name,arguments in main method-m:输出main method的参数
-l:输出完全的包名,应用主类名,jar的完全路径名
-v:输出jvm参数
-V:输出通过flag文件传递到JVM中的参数(.hotspotrc文件或-XX:Flags=所指定的文件
-Joption:传递参数到vm,例如:-J-Xms512m
[hostid]:
[protocol:][[//]hostname][:port][/servername]
命令的输出格式:
lvmid [ [ classname| JARfilename | "Unknown"] [ arg* ] [ jvmarg* ] ]
1、命令jps类似于Linux下的ps,但它只用于列出Java的进程。直接运行jps不加任何参数,可以列出Java程序的进程ID以及Main函数等名称。如下所示:
-
C:\Users\Administrator.USER-20160114OL>jps
-
8544 Jps
-
2244 PULSEI~1.JAR
-
12524 JConsole
-
6636
-
9628 Bootstrap
2、参数-q指定jps只输出进程ID,而不输出类的短名称:
-
C:\Users\Administrator.USER-20160114OL>jps -q
-
2244
-
12524
-
6636
-
8508
-
9628
-
C:\Users\Administrator.USER-20160114OL>jps -m
-
2244 PULSEI~1.JAR -os win32 -ws win32 -arch x86_64 -showsplash -launcher D:\soft
-
_install\MyEclipse\MyEclipse 10\myeclipse.exe -name Myeclipse --launcher.library
-
D:\soft_install\MyEclipse\MyEclipse 10\../Common/plugins/org.eclipse.equinox.la
-
uncher.i18n.win32.win32.x86_64_4.2.0.v201201111650\eclipse_4201.dll -startup D:\
-
soft_install\MyEclipse\MyEclipse 10\../Common/plugins/org.eclipse.equinox.launch
-
er_1.2.0.v20110502.jar -exitdata 21bc_a0 -install D:/soft_install/myeclipse/MyEc
-
lipse 10 -vm D:/soft_install/myeclipse/Common/binary/com.sun.java.jdk.win32.x86_
-
64_1.6.0.013/bin/javaw.exe -vmargs -Xmx512m -XX:MaxPermSize=256m -XX:ReservedCod
-
eCacheSize=64m -Dosgi.nls.warnings=ignore -jar C:\Users\ADMINI~1.USE\AppData\Loc
-
al\Temp\pul2897.tmp\PULSEI~1.JAR
-
12524 JConsole
-
12796 Jps -m
-
6636
-
9628 Bootstrap start
C:\Users\Administrator.USER-20160114OL>jps -l
-
2244 C:\Users\ADMINI~1.USE\AppData\Local\Temp\pul2897.tmp\PULSEI~1.JAR
-
10012 sun.tools.jps.Jps
-
12524 sun.tools.jconsole.JConsole
-
6636
-
9628 org.apache.catalina.startup.Bootstrap
C:\Users\Administrator.USER-20160114OL>jps -mlv
-
8864 sun.tools.jps.Jps -m -l -v -Denv.class.path=.;C:\Program Files\Java\jdk1.7.
-
0_80\lib\dt.jar;C:\Program Files\Java\jdk1.7.0_80\lib\tools.jar;D:\soft\java\dev
-
elop\plugins\apache-ant-1.9.6\lib; -Dapplication.home=C:\Program Files\Java\jdk1
-
.8.0_91 -Xms8m
-
2244 C:\Users\ADMINI~1.USE\AppData\Local\Temp\pul2897.tmp\PULSEI~1.JAR -os win32
-
-ws win32 -arch x86_64 -showsplash -launcher D:\soft_install\MyEclipse\MyEclips
-
e 10\myeclipse.exe -name Myeclipse --launcher.library D:\soft_install\MyEclipse\
-
MyEclipse 10\../Common/plugins/org.eclipse.equinox.launcher.i18n.win32.win32.x86
-
_64_4.2.0.v201201111650\eclipse_4201.dll -startup D:\soft_install\MyEclipse\MyEc
-
lipse 10\../Common/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar -exi
-
tdata 21bc_a0 -install D:/soft_install/myeclipse/MyEclipse 10 -vm D:/soft_instal
-
l/myeclipse/Common/binary/com.sun.java.jdk.win32.x86_64_1.6.0.013/bin/javaw.exe
-
-vmargs -Xmx512m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=64m -Dosgi.nls.w
-
arnings=ignore -jar C:\Users\ADMINI~1.USE\AppData\Local\Temp\pul2897.tmp\PULSEI~
-
1.JAR -Xmx512m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=64m -Dosgi.nls.war
-
nings=ignore
-
12524 sun.tools.jconsole.JConsole -Denv.class.path=.;C:\Program Files\Java\jdk1.
-
7.0_80\lib\dt.jar;C:\Program Files\Java\jdk1.7.0_80\lib\tools.jar;D:\soft\java\d
-
evelop\plugins\apache-ant-1.9.6\lib; -Dapplication.home=C:\Program Files\Java\jd
-
k1.8.0_91 -Xms8m -Djconsole.showOutputViewer
-
6636 -Dosgi.requiredJavaVersion=1.8 -XX:+UseG1GC -XX:+UseStringDeduplication -D
-
osgi.requiredJavaVersion=1.8 -Xms256m -Xmx1024m
-
9628 org.apache.catalina.startup.Bootstrap start -agentlib:jdwp=transport=dt_soc
-
ket,suspend=y,address=localhost:56965 -Dcatalina.home=D:\workspace\myeclipse\apa
-
che-tomcat-7.0.67 -Dcatalina.base=D:\workspace\myeclipse\apache-tomcat-7.0.67 -D
-
java.endorsed.dirs=D:\workspace\myeclipse\apache-tomcat-7.0.67/common/endorsed -
-
Djava.io.tmpdir=D:\workspace\myeclipse\apache-tomcat-7.0.67\temp -Djava.library.
-
path=C:\Program Files\Java\jdk1.7.0_80\bin;D:\workspace\myeclipse\apache-tomcat-
-
7.0.67\bin -Dsun.io.useCanonCaches=false
注意:
jps命令类似于ps命令,但是它只列出系统中所有的Java应用程序。通过jps命令可以方便的查看Java进程的启动类、传入参数和JVM参数等信息。