JDK提供丰富的命令行和图形化工具,涵盖编译(javac)、运行(java)、打包(jar)、文档生成(javadoc)等基础功能,以及进程查看(jps)、内存监控(jstat、jmap)、线程分析(jstack)、参数调整(jinfo)和诊断命令(jcmd)等运维能力;图形化工具有JConsole、Java VisualVM、Java Mission Control及Flight Recorder,支持可视化监控、性能剖析与故障排查。掌握这些工具可显著提升Java开发与维护效率。

Java开发离不开JDK提供的各类工具,这些工具分为命令行和图形化两类,帮助开发者完成编译、运行、调试、监控和性能分析等任务。以下是常用的JDK工具清单,涵盖开发和运维中的核心需求。
常用JDK命令行工具
JDK自带的命令行工具位于bin目录下,适用于脚本调用和自动化操作:
- javac:Java编译器,将.java源文件编译为.class字节码文件。
- java:Java虚拟机启动器,用于运行编译后的类文件或JAR包。
- jar:用于打包、解压和管理JAR文件,支持创建可执行JAR。
- javadoc:从源代码生成HTML格式的API文档。
- jps:显示当前系统中所有Java进程的进程ID和主类名,类似Linux的ps命令。
- jstat:监控JVM统计信息,如GC频率、堆内存使用情况。
- jmap:生成堆内存快照(heap dump),可用于分析内存泄漏。
- jstack:输出Java进程的线程栈信息,有助于排查死锁和线程阻塞问题。
- jinfo:查看或动态修改JVM配置参数。
- jcmd:多功能工具,可发送诊断命令给JVM,如触发GC、导出堆栈、生成dump等。
- keytool:管理密钥和证书,常用于HTTPS、签名JAR等场景。
- serialver:查看类的序列化版本UID,用于Serializable类版本控制。
常用JDK图形化工具
这些工具提供可视化界面,便于实时监控和分析Java应用:
- JConsole:Java监视与管理控制台,可查看内存、线程、类加载、MBean等信息,支持本地和远程连接。
- Java VisualVM (jvisualvm):功能全面的性能分析工具,集成内存分析、CPU采样、线程监控、堆转储查看等功能。
- Java Mission Control (jmc):高级监控和故障诊断工具,配合JFR(Java Flight Recorder)可记录长时间运行的应用行为。
- Java Flight Recorder (jfr):通过命令行或JMC启用,记录JVM内部事件(如GC、异常、方法调用等),用于事后分析。
基本上就这些。日常开发中,javac、java、jar是基础;排查问题时,jps、jstack、jmap很实用;性能调优阶段,VisualVM和JMC能提供深入洞察。掌握这些工具,能显著提升Java应用的开发和维护效率。










