jstack命令的语法为:jstack <pid>. 可以用jps查看java进程id。
jps本身可以列出所有的java进程。如下:
- [www@idc02-test-pay-17 che]$ jps
- 18992 Bootstrap
- 19668 Bootstrap
- 43764 Bootstrap
- 8531 Bootstrap
- 5498 Bootstrap
- 41978 Bootstrap
- 46242 Bootstrap
- 23309 Bootstrap
- 22947 Bootstrap
- 10310 Bootstrap
- 42138 Bootstrap
- 47213 Bootstrap
- 43476 Bootstrap
- 23932 Bootstrap
jps显示当前所有java进程pid的命令,
jps -q 只显示进程id。不显示类名
jps -m输出传递给main方法的参数,如下:
- [www@idc02-test-pay-17 che]$
- [www@idc02-test-pay-17 che]$ jps -m
- 18992 Bootstrap start
- 19668 Bootstrap start
- 43764 Bootstrap start
- 8531 Bootstrap start
- 5498 Bootstrap start
- 41978 Bootstrap start
- 46242 Bootstrap start
- 23309 Bootstrap start
- 22947 Bootstrap start
- 10310 Bootstrap start
- 42138 Bootstrap start
- 47213 Bootstrap start
- 43476 Bootstrap start
jps -l输出main class完整包名:
- [www@idc02-test-pay-17 che]$ jps -l
- 18992 org.apache.catalina.startup.Bootstrap
- 19668 org.apache.catalina.startup.Bootstrap
- 43764 org.apache.catalina.startup.Bootstrap
- 8531 org.apache.catalina.startup.Bootstrap
- 5498 org.apache.catalina.startup.Bootstrap
- 41978 org.apache.catalina.startup.Bootstrap
- 46242 org.apache.catalina.startup.Bootstrap
- 23309 org.apache.catalina.startup.Bootstrap
- 22947 org.apache.catalina.startup.Bootstrap
- 10310 org.apache.catalina.startup.Bootstrap
- 42138 org.apache.catalina.startup.Bootstrap
- 47213 org.apache.catalina.startup.Bootstrap
jps -v显示传递给jvm的参数:
- [www@idc02-test-pay-17 che]$ jps -v | grep pfs-payment
- 5498 Bootstrap -Djava.util.logging.config.file=/usr/local/webserver/tomcat/pfs-payment/conf/logging.properties -Xdebug -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5104 -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true -XX:PermSize=128M -XX:MaxPermSize=128M -Xms1024M -Xmx1024M -XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=2 -XX:SurvivorRatio=2 -XX:+DisableExplicitGC -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseCMSInitiatingOccupancyOnly -XX:+PrintHeapAtGC -Xloggc:/usr/local/webserver/tomcat/pfs-payment/logs/gc.log -XX:+PrintGCApplicationConcurrentTime -XX:+PrintGCApplicationStoppedTime -Duser.timezone=Asia/Shanghai -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dproject.name=pfs-payment -Dvtrace.log.root=/usr/loc
- [www@idc02-test-pay-17 che]$
- [www@idc02-test-pay-17 che]$
所以这里又找到了一个寻找进程的办法,除了:ps -ef | grep pfs-payment
还有:jps -v | grep pfs-payment