JDK常用命令行工具(基于JDK10)
虽然我是在jdk10环境下, 但是大体上和jdk8是差不多的. 总共有这么多

本来想着一口气把所有命令都边学边总结一下的, 结果发现....有些还真的不是很常用....或者说我这个水平还接触不到那么多. 于是我就把我能使用到的几个常用的总结一下了. 当做是笔记了.
jshell
jshell启动

jshell退出

jshell使用
就想python一样, 可以每一行代码都返回一个交互结果. 编写短小的程序来运行的时候, 就不用新建项目, 然后新建一个类了...可以直接上核心代码了.



还以为我从此以后不再需要计算器了
java的jshell计算大数的时候如下:(果然不出所料...失望..)

怎么解决呢? 肯定是因为默认数字都是Integer型. 只好手动调用BigInteger了.

jcmd
jcmd -h 输出jcmd的帮助信息.

jcmd -l 打印出所有jvm进程信息.

红色圈出来的数字是pid, 也就是进程id
jcmd <pid> PerfCounter.print 性能统计信息


jcmd <pid> help 列出可执行的进程操作


jcmd <pid> VM.version 看JVM版本信息
从上面一小节的截图中咱们挑一个执行一下. 比如 倒数第二行的VM.version

这样就利用了VM.version操作打印出了JDK虚拟机的版本.
jcmd <pid> GC.class_histogram 查看系统中类统计信息
(和这个命令是一个效果 jmap -histo <pid> )

jcmd <pid> VM.uptime 查看 JVM 的启动时长

jcmd <pid> Thread.print 查看线程堆栈信息
(等同于这个命令: jstack <pid> )

jcmd <pid> GC.run 对JVM执行System.gc()

jcmd <pid> VM.system_properties 查看JVM的系统配置信息

jcmd <pid> VM.flags 查看JVM的启动参数

jhsdb命令
这个命令是jdk9之后才开始有的
jhsdb hsdb

这命令会打开图形界面. 看起来很高大上的样子...这个还有待学习....看知乎上R大介绍过, 学习学习.

jhsdb jmap --heap --pid <pid>
查看heap的信息,GC使用的算法,heap的配置. (原来的jmap -heap 命令没有了, 被这个命令代替了)

jmap
jmap -dump:live,format=b,file=dump.hprof <pid> 输出堆信息到文件.
live指的是活着的对象, 如果不指定, 那么就会输出所有对象的

jmap -heap <pid> heap的信息,GC使用的算法,heap的配置
jdk10 里发现不支持-heap了. 被前面的 `jhsdb jmap --heap --pid <pid>` 这个命令替代了.
jmap -finalizerinfo <pid> 打印等待回收的对象信息

输出这个说明没有F-QUEUE队列中并没有等待Fializer线程执行finalizer方法的对象
jmap -histo:live <pid> 打印堆的对象统计
(作用和这个命令相同 jcmd <pid> GC.class_histogram )

jmap -clstats <pid> 类加载器统计信息

jps
jps 显示jvm进程id及name

jps -q 仅显示进程id

jps -m 显示主函数传入的参数

jps -l 显示全限定名

jps -v 显示jvm参数

jstack
jstack <pid> 查看线程堆栈信息
(等同于这个命令 jcmd <pid> Thread.print)

jstat
jstat这里讲的更详细: https://blog.csdn.net/zhaozheng7758/article/details/8623549
JDK常用命令行工具(基于JDK10)的更多相关文章
- JDK常用命令行工具使用
- JDK的命令行工具系列 (三) jhat、jstack
jhat: heapdump文件分析工具 在前两篇系列文章JDK的命令行工具系列 (一) jps.jstat.JDK的命令行工具系列 (二) javap.jinfo.jmap中, 我们已经介绍过了jp ...
- JDK的命令行工具系列 (二) javap、jinfo、jmap
javap: 反编译工具, 可用来查看java编译器生成的字节码 参数摘要: -help 帮助 -l 输出行和变量的表 -public 只输出public方法和域 -protected 只输出publ ...
- JDK的命令行工具系列 (一) jps、jstat
概述 在我们进行故障定位和性能分析时, 可以使用Java Dump(也叫Dump文件)来帮助排查问题, 它记录了JVM运行期间的内存占用和线程执行等情况.其中Heap Dump文件是二进制格式, 它保 ...
- JDK的命令行工具
Jcmd:综合工具 jcmd -l 列出当前运行的所有虚拟机 参数-l表示列出所有java虚拟机,针对每一个虚拟机,可以使用help命令列出该虚拟机支持的所有命令 jcmd [pid] help j ...
- JVM 常用命令行工具
本文部分摘自<深入理解 Java 虚拟机第三版> 基础故障处理工具 Java 开发人员肯定都知道 JDK 的 bin 目录下有许多小工具,这些小工具除了用于编译和运行 Java 程序外,打 ...
- 虚拟机性能监控与故障处理工具------JDK的命令行工具
①jps:虚拟机进程状况工具 功能:列出正在运行的虚拟机进程,并显示1.虚拟机执行主类名称以及2.这些进程的本地虚拟机唯一ID(LVMID). 使用频率最高的JDK命令行工具,其他的JDK工具大多需要 ...
- Scrapy学习篇(二)之常用命令行工具
简介 Scrapy是通过Scrapy命令行工具进行控制的,包括创建新的项目,爬虫的启动,相关的设置,Scrapy提供了两种内置的命令,分别是全局命令和项目命令,顾名思义,全局命令就是在任意位置都可以执 ...
- Java常用命令行工具
命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...
随机推荐
- extjs ajax 请求成功也会进入failure
Ext.Ajax.request({ url: '路径', method : 'post', params : { 传的参数 }, success: function (action ...
- windows10 uwp获取设备当前地理位置(经纬度)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 二、PHP基本语法 - PHP零基础快速入门
我们日常生活中,有些人使用普通话交流,有些人使用家乡话.类比到计算机的世界里,PHP 是人与计算机沟通的语言之一. 既然是语言,那就必须遵循一定的语法规则.譬如 A 向 B 表白,A 会对 B 说:& ...
- springboot mybatis 整合
新建项目在上一篇. 第二步:创建表和相应的实体类 实体类:user.java package com.qtt.im.entity; import java.io.Serializable; publi ...
- nodejs fs path
内容详见我的gitHub: https://github.com/shangyueyue/ssy-utils/tree/master/src/nodejs/fs
- XML fragments parsed from previous mappers already contains value for xxxxx
错误信息: Caused by: org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file ...
- maven 将第三方jar包转成maven的jar包
转载:https://blog.csdn.net/qq_40644583/article/details/81475135 1.首先你需要准备外部jar包 我的这个jar包现在以及下载解压到桌面 地址 ...
- jsp学习(2)jsp标签
1.脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式:<%代码片段%>您也可以编写与其等价的XML语句,就像下面这样: ...
- idea 转载
转载:https://blog.csdn.net/qq_34033853/article/details/77448431 摘要:在创建类时,自动生成代码的注释模板 本篇内容为大家提供的是Intell ...
- C语言博客作业04--数组
1.本章学习总结 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 关于数组,数组是最基本的构造类型,它是一组相同类型数据的有序组合.数组中的元素在内存中连续存放,每个元素 ...