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线程执行final
izer方法的对象
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 ...
随机推荐
- 十款 Chrome 扩展工具,提高前端编码效率
1. 掘金 Chrome 插件 对于开发者来说,比开发过程更重要的,应该要算平时对于开发资源以及技术文章一点一滴的积累了吧.那么,开发者能够在哪里获取需要的技术内容呢?过去,你可能需要在 GitHub ...
- 应用wavesurfer.js绘制音频波形图小白极速上手总结
一.简介 1.1 引 人生中第一份工作公司有语音识别业务,需要做一个web网页来整合语音引擎的标注结果和错误率等参数,并提供人工比对的语音标注功能(功能类似于TranscriberAG等),(博 ...
- Redis和MongoDB的区别(面试受用)
项目中用的是MongoDB,但是为什么用其实当时选型的时候也没有太多考虑,只是认为数据量比较大,所以采用MongoDB. 最近又想起为什么用MongoDB,就查阅一下,汇总汇总: 之前也用过redis ...
- top命令用法详解
top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具.通过top命令所提供的互动式界面,用热键可以管理. 语法 top(选项) 选项 -b:以批处理模式 ...
- python selenium while 循环
while True: try: loadmore = browser.find_element_by_xpath('//div[@class="right"]/div[@clas ...
- React 系列教程2:编写兰顿蚂蚁演示程序
简介 最早接触兰顿蚂蚁是在做参数化的时候,那时候只感觉好奇,以为是很复杂的东西.因无意中看到生命游戏的 React 实现,所以希望通过兰顿蚂蚁的例子再学习一下 React. 兰顿蚂蚁的规则非常简单: ...
- python基础 常见用法
1.python计时器timeit模块 1)timeit 模块定义了接收两个参数的Timer类,两个参数都是字符串. 参数1:要计时的语句或者函数 参数2:为参数1构建环境的导入语句 2)Timer对 ...
- SFP光模块与SFP+、XFP、QSFP、GBIC、BIDI的区别
SFP.SFP+.XFP.QSFP.GBIC和BIDI等不同封装类型光模块不断推陈出新,我们就以市场上比较常见的为主,来谈谈它与其他类似光模块的区别. SFP光模块 SFP光模块又称⼩封装可插拔光模块 ...
- Windows kafka_2.11-1.1.0安装
#broker.id= #broker.list=,, listeners=PLAINTEXT://127.0.0.1:9092 advertised.listeners=PLAINTEXT://12 ...
- MyBatis 3源码解析(二)
二.获取SqlSession对象 1.首先调用DefaultSqlSessionFactory 的 openSession 方法,代码如下: @Override public SqlSession o ...