JAVA 常用工具

JAVA 常用工具

jar - 为类和资- 源创建存档,并从存档中操作或恢复单个类或资源

  • jarsigner - 签名和验证 Java 存档 (JAR) 文件
  • java - 启动 Java 应用程序
  • javac - 读取Java类和接口定义并将它们编译成字节码和类文件
  • javadoc - 从 Java 源文件生成 API 文档的 HTML 页面
  • javap - 反汇编一个或多个类文件
  • jcmd - 向正在运行的 Java 虚拟机 (JVM) 发送诊断命令请求
  • jconsole - 启动图形控制台来监视和管理 Java 应用程序
  • jdb - 查找并修复 Java 平台程序中的错误
  • jdeprscan - 静态分析工具,用于扫描 jar 文件(或类文件的其他一些聚合)以查找已弃用的 API 元素的使用
  • jdeps - 启动 Java 类依赖分析器
  • jfr - 解析和打印飞行记录器文件
  • jhsdb - 附加到 Java 进程或启动事后调试器来分析崩溃的 Java 虚拟机 (JVM) 的核心转储内容
  • jinfo - 生成指定Java进程的Java配置信息
  • jlink - 将一组模块及其依赖项组装并优化为自定义运行时映像
  • jmap - 打印指定进程的详细信息
  • jmod - 创建 JMOD 文件并列出现有 JMOD 文件的内容
  • jpackage - 打包一个独立的 Java 应用程序
  • jps - 列出目标系统上已检测的 JVM
  • jrunscript - 运行支持交互和批处理模式的命令行脚本 shell
  • jshell - 在读取-评估-打印循环 (REPL) 中交互式地评估 Java 编程语言的声明、语句和表达式
  • jstack - 打印指定 Java 进程的 Java 线程的 Java 堆栈跟踪
  • jstat - 监控 JVM 统计信息
  • jstatd - 监视已检测的 Java HotSpot VM 的创建和终止
  • jwebserver - 启动 Java 简单 Web 服务器
  • keytool - 管理加密密钥、X.509 证书链和可信证书的密钥库(数据库)
  • rmir​​egistry - 在当前主机上的指定端口上创建并启动远程对象注册表
  • Serialver - 以适合复制到不断发展的类中的形式返回一个或多个类的“serialVersionUID”

简单实用案例

# 打印 app.jar 内容
jar -tf app.jar
# 查看有哪些 java 进程
jps
# 查看指定 PID 的Java进程运行信息
jinfo -flags <PID>
# 查看堆内存各区域的使用率以及GC情况
jstat -gcutil -h20 pid 1000
# 没 5 秒钟打印一次GC情况
jstat -gcutil pid 5000
# 查看堆内存中的存活对象,并按空间排序
jmap -histo pid | head -n20
# dump堆内存文件
jmap -dump:format=b,file=heap pid

# 查看资源占用
top
top -p pid
top -Hp pid
# 查看调用栈状态:是否有死锁
jstack -l pid
# 打印调用栈信息至指定文件
jstack pid > tmp.file
posted @ 2023-12-26 17:31  临渊不羡渔  阅读(18)  评论(0编辑  收藏  举报