JavaSE---命令行工具
1、jps(JVM Process Status Tool)
1.1、作用:
显示 正在执行的 虚拟机进程、
显示 虚拟机执行主类的名称(main()所在的类);
显示 这些虚拟机进程的 本地虚拟机唯一ID(LVMID:Local Virtual Machine Identifier);
LVMID 与 OS的进程ID 是一致的;
1.2、jps命令格式:
jps [options] [hostid]
-q:只输出 LVMID,省略主类名称;
-m:输出 虚拟机进程 启动时 传递给 main() 的参数;
-l:输出主类的全名(如果进程执行的是jar包,输出jar路径);
-v:输出 虚拟机进程启动时 JVM参数;
2、jstat(JVM Statics Monitoring Tool)
2.1、作用:
显示 虚拟机各种 运行状态信息( 类装载、内存、GC、JIT等运行数据);
2.2、jstat命令格式:
jstat [option vmid [interval [s|ms] [count]]]
vmid:如果是本地进程,vmid与lvmid一致、如果是远程进程,vmid格式:
interval:查询间隔;
count:查询次数;
3、jinfo(Configuration Info for Java)
3.1、作用:
实时 查看 、调整 虚拟机的各项参数;
3.2、jinfo命令格式
jinfo [option] pid
-flag:系统默认值;
-sysprops:将虚拟机进程的System.getProperties() 内容打印;
4、jmap(Memory Map for Java)
4.1、作用:
生成 堆转储快照;
查询 finalize执行队列、java堆和永久代的详细信息(空间使用率、当前用的是哪种收集器...);
4.2、jmap命令格式:
jmap [option] vmid
5、jhat(JVM Heap Analysis Tool)
5.1、虚拟机堆转储快照分析工具
6、jstack(Stack Trace for Java)
6.1、作用:
生成 虚拟机当前时刻的 线程快照;
当前虚拟机内 每一条线程 正在执行的方法堆栈的集合;
目的: 定位 线程出现长时间停顿的原因(eg:死锁、死循环、请求外部资源长时间等待...)
6.2、jstack命令格式:
jstack [option] vmid