JDK命令行工具

目录1.JDK的命令行工具1.1 常用工具1.2 jps:虚拟机进程状况工具1.3 jstat:虚拟机统计信息监控工具1.4 jinfo:java配置信息查看工具1.5 jmap:Java内存映射工具1.6 jhat:虚拟机堆快照分析工具1.7 jstack:Java堆栈跟踪工具1.JDK的命令行工具1.1 常用工具 名称 作用 jps JVM Process Status Tool,显示系统中
摘要由CSDN通过智能技术生成

目录

1.JDK的命令行工具

1.1 常用工具

1.2 jps:虚拟机进程状况工具

1.3 jstat:虚拟机统计信息监控工具

1.4 jinfo:java配置信息查看工具

1.5 jmap:Java内存映射工具

1.6 jhat:虚拟机堆快照分析工具

1.7 jstack:Java堆栈跟踪工具


1.JDK的命令行工具

1.1 常用工具

名称

作用

jps

JVM Process Status Tool,显示系统中所有的Hotspot虚拟机进程

jstat

JVM Statistics Monitoring Tool,用于收集HotSpot虚拟机各方面的运行数据

jinfo

Configuration info for java,显示虚拟机配置信息

jmap

Memory Map for java,生成虚拟机的内存转储快照(heapdump文件)

jhat

JVM Heapdump Browser,用于分析heapdump文件,会建立一个HTTP/HTML服务器,用户可以在浏览器上查看分析结果

jstack

Stack Trace for java,显示虚拟机的线程快照

 

1.2 jps:虚拟机进程状况工具

JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程,类似于Linux中的ps命令。

$ jps -help
usage: jps [-help]
       jps [-q] [-mlvV] [<hostid>]
​
Definitions:
    <hostid>:      <hostname>[:<port>]

参数含义:

复制代码

[xxxx@xxxxx01 ~]$ jps
25052 Bootstrap
13210 Jps
[xxxx@xxxxx01 ~]$ jps -q  //仅输出虚拟机进程id
25052
13269
[xxxx@xxxxx01 ~]$ jps -m  //输出虚拟机进程启用的时候传递给主类main()函数的参数
25052 Bootstrap
13284 Jps -m
[xxxx@xxxxx01 ~]$ jps -l  //输出主类的全类名
25052 com.xxxx.boot.Bootstrap
13309 sun.tools.jps.Jps
[xxxx@xxxxx01 ~]$ jps -v  //输出虚拟机进程启动时JVM参数
25052 Bootstrap -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Djava.io.tmpdir=/tmp -Djava.net.preferIPv6Addresses=false -Xmx2g -Xms128m -XX:SurvivorRatio=8 -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/logs/leaf.oom.log -XX:ReservedCodeCacheSize=128m -XX:InitialCodeCacheSize=128m -XX:+DisableExplicitGC -XX:+PrintGCDetails -XX:+PrintHeapAtGC -XX:+PrintTenuringDistribution -XX:+UseConcMarkSweepGC -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -Xloggc:/opt/logs/xxx.gc -XX:CMSFullGCsBeforeCompaction=0 -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=80 -Xloggc:/var/xxx/logs/xxx.gc.log -XX:ErrorFile=/var/xxx/logs/xxx.vmerr.log -XX:HeapDumpPath=/var/xxx/logs/xxx.heaperr.log -Djetty.context=/ -Djetty.logs=/var/xxxxx/logs/ -Djetty.webroot=/opt/xxx/yyy -Djetty.port=8080 -DSTOP.PORT=38415
13335 Jps -Dapplication.home=/usr/local/jdk1.7.0_76 -Xms8m
[xxxx@xxxxx01 ~]$ jps -V  //有啥作用?
25052 Bootstrap
13670 Jps

复制代码

常用命令:

jps -lmv

[xxxx@xxxxx01 ~]$ jps -lmv
25052 com.xxx.mms.boot.Bootstrap -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Djava.io.tmpdir=/tmp -Djava.net.preferIPv6Addresses=false -Xmx2g -Xms128m -XX:SurvivorRatio=8 -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/logs/leaf.oom.log -XX:ReservedCodeCacheSize=128m -XX:InitialCodeCacheSize=128m -XX:+DisableExplicitGC -XX:+PrintGCDetails -XX:+PrintHeapAtGC -XX:+PrintTenuringDistribution -XX:+UseConcMarkSweepGC -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -Xloggc:/opt/logs/leaf.gc -XX:CMSFullGCsBeforeCompaction=0 -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=80 -Xloggc:/var/logs//.gc.log -XX:ErrorFile=/var/logs//.vmerr.log -XX:HeapDumpPath=/var/logs//.heaperr.log  -Djetty.context=/ -Djetty.logs=/var/logs/ -Djetty.webroot=/opt/xxx/leaf -Djetty.port=8080 -DSTOP.PORT=38415
13685 sun.tools.jps.Jps -lmv -Dapplication.home=/usr/local/jdk1.7.0_76 -Xms8m

 

1.3 jstat:虚拟机统计信息监控工具

用于监视虚拟机各种运行状态信息的工具。包括类装载、内存、垃圾收集、JIT编译等运行数据。

复制代码

[xxxx@xxxxx01 ~]$ jstat -help
Usage: jstat -help|-options
       jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
​
Definitions:
  <option>      An option reported by the -options option
  <vmid>        Virtual Machine Identifier. A vmid takes the following form:
                     <lvmid>[@<hostname>[:<port>]]
                Where <lvmid> is the local vm identifier for the target
                Java virtual machine, typically a process id; <hostname> is
                the name of the host running the target Java virtual machine;
                and <port> is the port number for the rmiregistry on the
                target host. See the jvmstat documentation for a more complete
                description of the Virtual Machine Identifier.
  <lines>       Number of samples between header lines.
  <interval>    Sampling interval. The following forms are allowed:
                    <n>["ms"|"s"]
                Where <n> is an integer and the suffix specifies the units as
                milliseconds("ms") or seconds("s"). The default units are "ms".
  <count>       Number of samples to take before terminating.
  -J<flag>      Pass <flag> directly to the runtime system.
[xxxx@xxxxx01 ~]$ jstat -options

复制代码

命令格式:

jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
     //option                   //vmid  //查询间隔    //查询次数 
 -t参数可以在输出信息前加一个timestamp列,显示程序的运行时间
 -h参数可以在周期性数据输出时,输出多少行数据后,跟着输出一个表头信息。
 -interval参数用于指定统计数据的输出周期,单位是毫秒
 -count参数用于指定输出的次数

把options按功能划分一下

复制代码

-class           //显示ClassLoader相关信息。             监视类装载、卸载数量、总空间以及类装载所花的时间
​
-gc              //显现与GC相关的堆信息。                 监视Java堆状况,包括Eden区、两个Survior区、老年代、永久代等容量、已用空间、GC时间统计等信息
-gccapacity      //显示各个代的容量和使用情况。            监视内容与-gc基本相同,但是输出主要关注Java堆各个区域使用的最大、最小空间
-gcutil          //显示垃圾收集信息。                    监视内容与-gc基本相同,但是输出主要关注已使用空间占总空间的百分比
-gccause         //显示垃圾收集信息(同-gcutil),同时显示最后一次或当前正在发生的垃圾收集的诱发原因。
-gcnew           //显示新生代信息。                      监视新生代GC情况
-gcnewcapacity   //显示新生代大小与使用情况。             监视内容与-gcnew基本相同,输出主要关注使用到的最大、最小空间
​
-gcold           //显示老年代信息。                     监视老年代GC情况
-gcoldcapacity   //显示老年代大小与使用使用。             监视内容与-gcold基本相同,输出主要关注使用到的最大、最小空间
-gcpermcapacity  //输出永久代使用到的最大、最小空间
​
-compiler         //显示JIT编译的相关信息。              输出JIT编译期编译过的方法、耗时等信息
-printcompilation //输出已经被JIT编译过的方法

复制代码

 

-class参数

复制代码

[xxxx@xxxxx01 ~]$ jstat -class 25052 100ms 5
Loaded  Bytes  Unloaded  Bytes     Time
  9285 18916.1        0     0.0       8.54
  9285 18916.1        0     0.0       8.54
  9285 18916.1        0     0.0       8.54
  9285 18916.1        0     0.0       8.54
  9285 18916.1        0     0.0       8.54
​
Loaded:载入类的数量
Bytes:载入类的合计大小
Unloaded:卸载类的数量
Bytes:卸载类的合计大小
Time:加载类和卸载类上花费的时间

复制代码

 

-gc参数

复制代码

[xxxx@xxxxx01 ~]$ jstat -gc 25052 100ms 5
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       PC     PU    YGC     YGCT    FGC    FGCT     GCT
4352.0 4352.0  0.0   496.2  34944.0  18208.5   94960.0    60879.8   262144.0 57052.6  12987   54.255  268     1.606   55.861
4352.0 4352.0  0.0   496.2  34
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值