1. 概述

1.1. 工具简介

jps(Java Process Status Tools),是JDK自带的查看Java进程状态的工具.该命令和Unix系统命令的命名风格一致,功能与ps命令接近,用于显示正在OS上运行的Java进程信息。 该命令的使用频率极高,因为其他的JDK工具大部分是需要基于LVMID来确定监控哪一个虚拟机进程,对本地虚拟机进程而言,LVMID与OS的进程PID(Process Identity)一致。

1.2. 命令帮助

wanghui@Mokalas-MacBook-Pro ~ $ jps -help
usage: jps [-help]
       jps [-q] [-mlvV] [<hostid>]

Definitions:
    <hostid>:      <hostname>[:<port>]

2. jps常用选项

先写一个简单的Java类,并运行之,类定义如下:

  import java.text.SimpleDateFormat;
  import java.util.Date;
  import java.util.concurrent.TimeUnit;

  /**
   * @Author 辉辉大侠
   * @Date 2017-03-11 09:43
   * @Motto 一生伏首拜阳明
   */
  public class JPSMain {
      public static void main(String[] args) throws InterruptedException {
          int i = 100;
          while (i > 0) {
              SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
              System.out.println(sdf.format(new Date()));
              TimeUnit.SECONDS.sleep(10);
          }
      }
  }

2.1. 不带任何选项

wanghui@Mokalas-MacBook-Pro ~ $ jps
44761 JPSMain
44956 Jps

输出进程id和运行的类

2.2. -q参数

wanghui@Mokalas-MacBook-Pro ~ $ jps -q
44761
44989

仅输出本地虚拟机进程标识符(LVMID)列表,不输出其他任何信息

2.3. -m参数

wanghui@Mokalas-MacBook-Pro ~ $ jps -m
44761 JPSMain
45051 Jps -m

输出进程id、主类信息和传递给主类的参数

2.4. -l参数

wanghui@Mokalas-MacBook-Pro ~ $ jps -l
45236 sun.tools.jps.Jps
44761 JPSMain
wanghui@Mokalas-MacBook-Pro ~ $

输出进程id和主类的全限定名,如果执行的jar,则输出jar的全路径

2.5. -v参数

wanghui@Mokalas-MacBook-Pro ~ $ jps -v
45366 Jps -Dapplication.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home -Xms8m
44761 JPSMain
wanghui@Mokalas-MacBook-Pro ~ $

输出启动时JVM进程的虚拟机运行参数

2.6. -V参数

wanghui@Mokalas-MacBook-Pro ~ $ jps -V
44761 JPSMain
45963 Jps

输出通过标识文件(.hotspotrc文件或-XX:Flags=参数指定的文件)传递給JVM的参数

3. 最佳实践

3.1. 常用手法

在日常运行时,带上-lvm参数可显示进程的详细信息。

  wanghui@Mokalas-MacBook-Pro ~ $ jps -lvm
  44761 JPSMain
  45614 sun.tools.jps.Jps -lvm -Dapplication.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home -Xms8m
Copyright © 辉辉大侠@杭州 2017 all right reserved,powered by Gitbook修订时间: 2017-03-30 01:17:50

results matching ""

    No results matching ""