JDK命令行工具

JDK安装目录下的bin目录下,有一些命令行工具。 这些工具虽然是.exe结尾(windows环境上),但它们的具体实现在tools.jar中,所以以下两个命令是等价的:

1. jps

2. java -classpath  %JAVA_HOME%/lib/tools.jar   sun.tools.jps.Jps

 

1. jps命令(JVM Process Status Tool)

      jps命令可以查看系统中的java进程,java进程的启动类,main函数的入参, 传递给JVM的参数。

     jps  [options] [hostid]

    options:

     -q: 只输出LVMID, 省略主类的名称

     -m:输出虚拟机进程启动时,传递给主类main函数的参数

      -l :输出主类的全名,如果进程执行的是jar包,则输出jar的路径

     -v :输出JVM虚拟机启动时的JVM参数

 

2. jstat命令(JVM Statistics Monitoring Tool, 查看运行时的信息)

 

       jstat是一个可以用于观察java应用程序运行时信息的工具。它的功能非常强大,可以通过它,查看堆信息的详细情况。

      jstat  -<option> [-t] [-h<lines>]  <vmid> [<interval> [<count>]]

      选项option可以由以下值构成

      -class :显示classloader的相关信息

     -compiler:显示jit编译的相关信息

     -printcompilation:  输出jit编译的方法信息

     -GC:显示与GC相关的堆信息

     -gccapacity:显示各个代的容量及使用情况

     -gccause: 显示垃圾收集相关信息(同-gcutil),同时显示最后一次或当前正在发生的垃圾收集的诱发原因。

     -gcnew:显示新生代信息

     -gcnewcapacity:显示新生代大小与使用情况

     -gcold:显示老年代与永久代的信息

    -gcoldcapacity:显示老年代的大小

    -gcpermcapacity:显示永久代的大小

    -gcutil:显示垃圾收集信息

   

   -f 参数可以在输出信息前加一个Timestamp列,显示程序的运行时间

   -h参数可以在周期性数据输出时,输出多少行数据后,输出一个表头信息。

    interval 参数用户指定输出统计数据的周期,单位毫秒

   count用户指定一共输出多少次数据

 

    此命令执行结果中,一些列的说明:

     S0C:   S0的容量, capacity

      S1C:  S1的容量

      S0U:  S0的使用量, used

      S1U:  S1的使用量

       EC: eden的容量

       EU: eden的使用量

       OC: OU:  老年代的容量,使用量

       PC   PU: 永久代的容量, 使用量

       YGC:Numbers of young generation gc events  (minor gc 次数)

      YGCT :ygc  time  单位:

      FGC: fgc  次数

      FGCT: fgc  时间, 单位:

      gct: 总的gc时间, 单位:

      ============

      S0 — Survivor  0 区已使用空间的百分比     

     S1 —  Survivor  1 区已使用空间的百分比     

    E   —  Eden  区已使用空间的百分比     

    O   —  Old  区已使用空间的百分比    

     P   — Perm  区已使用空间的百分比 
    YGC — 从应用程序启动到采样时发生 Young GC 的次数 
    YGCT– 从应用程序启动到采样时 Young GC 所用的时间(单位秒)     

FGC — 从应用程序启动到采样时发生 Full GC 的次数 
    FGCT– 从应用程序启动到采样时 Full GC 所用的时间(单位秒)     

GCT — 从应用程序启动到采样时用于垃圾回收的总时间(单位秒) 

     

 

3. jinfo命令

 

      jinfo命令可以用来查看正在运行的java应用程序的扩展参数,甚至支持在运行时修改部分参数。

      jinfo  <option>  <pid>

      -flag <name> : 打印指定JVM的参数值

      -flag  [+|-] <name> :设置指定JVM参数的布尔值

      -flag <name>=<value>:设置指定JVM参数的值

     

4. jmap命令

 

 

 

    

    

    

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值