JDK内置常用工具使用大全

Posted 益达学长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK内置常用工具使用大全相关的知识,希望对你有一定的参考价值。

JDK的bin目录下面有许多命令,可以很方便的堆虚拟机进行监控或者故障排查等

工具具体使用

bin目录下的命令本质上都是Tools.jar的一层封装,首先对比一下常用的命令功能

bin目录命令名称功能描述
apt注解处理工具(Annotation Processing Tool),主要用于注解处理。
extcheck扩展检测工具,主要用于检测指定jar文件与当前已安装的Java SDK扩展之间是否存在版本冲突。
idljIDL转Java编译器(IDL-to-Java Compiler),用于为指定的IDL文件生成Java绑定。IDL意即接口定义语言(Interface Definition Language)。
jarjar文件管理工具,主要用于打包压缩、解压jar文件。
javaJava运行工具,用于运行.class字节码文件或.jar文件
javacJava编译工具(Java Compiler),用于编译Java源代码文件。
javadocJava文档工具,主要用于根据Java源代码中的注释信息生成html格式的API帮助文档
javapJava反编译工具,主要用于根据Java字节码文件反汇编为Java源代码文件。
java-rmiJava远程方法调用(Java Remote Method Invocation)工具,主要用于在客户机上调用远程服务器上的对象。
jcmdJava 命令行(Java Command),用于向正在运行的JVM发送诊断命令请求。
jconsole图形化用户界面的监测工具,主要用于监测并显示运行于Java平台上的应用程序的性能和资源占用等信息。
jdbJava调试工具(Java Debugger),主要用于对Java应用进行断点调试。
jhatJava堆分析工具(Java Heap Analysis Tool),用于分析Java堆内存中的对象信息。
jinfoJava配置信息工具(Java Configuration Information),用于打印指定Java进程、核心文件或远程调试服务器的配置信息。
jmapJava内存映射工具(Java Memory Map),主要用于打印指定Java进程、核心文件或远程调试服务器的共享对象内存映射或堆内存细节
jmcJava任务控制工具(Java Mission Control),主要用于HotSpot JVM的生产时间监测、分析、诊断。
jpsJVM进程状态工具(JVM Process Status Tool),用于显示目标系统上的HotSpot JVM的Java进程信息。
jrunscriptJava命令行脚本外壳工具(command line script shell),主要用于解释执行javascript、groovy、ruby等脚本语言。
jsadebugdJava可用性代理调试守护进程(Java Serviceability Agent Debug Daemon),主要用于附加到指定的Java进程、核心文件,或充当一个调试服务器。
jstackJava堆栈跟踪工具,主要用于打印指定Java进程、核心文件或远程调试服务器的Java线程的堆栈跟踪信息。
jstatJVM统计监测工具(JVM Statistics Monitoring Tool),主要用于监测并显示JVM的性能统计信息。
jstatdjstatd(VM jstatd Daemon)工具是一个RMI服务器应用,用于监测HotSpot JVM的创建和终止,并提供一个接口,允许远程监测工具附加到运行于本地主机的JVM上。
jvisualvmJVM监测、故障排除、分析工具,主要以图形化界面的方式提供运行于指定虚拟机的Java应用程序的详细信息。
schemagenXML schema生成器,用于java类生成XML schema文件。
xjc主要用于根据XML schema文件生成对应的Java类。

需要在项目启动的时候添加对应参数:

# 远程服务器ip,对应的端口,是否使用SSL和权限验证等
-Djava.rmi.server.hostname=192.168.120.30 -Dcom.sun.management.jmxremote.port=9528 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false

新建JMX连接,

监控效果如图,还可以查jvm参数信息,线程情况等:

以上是关于JDK内置常用工具使用大全的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段3——url大全

VSCode自定义代码片段3——url大全

# Java 常用代码片段

# Java 常用代码片段

VSCode自定义代码片段——cli的终端命令大全

VSCode自定义代码片段4——cli的终端命令大全