语法
jmap [ option ] pid
jmap [ option ] executable core
jmap [ option ] [server-id@]remote-hostname-or-IP
参数
option 参数是单一的,紧跟在命令后面。
pid 要被映射的进程。必须是java进程。用jps可以获得java进程列表
executable 产生核心转储的可执行java代码
core 要被映射的核心文件
remote-hostname-or-IP 远程调试服务器的域名或者ip地址(看jsadebugd)
server-id 可选唯一id,如果多个服务器运行在同一个远程主机
描述
是复制共享对象的内存映射、给定进程的堆内存、核心文件、远程调试服务器。如果给定的进程是再64的VM,你需要制定参数,例如:
jmap -J-d64 -heap pid
注意:这个工具在未来的JDK里可能不支持或者不出现。在windows系统里没有dbgeng.dll, 需要安装'Debugging Tools for Windows'来运行这些工具。同时PATH环境变量必须包含被目标进程或者崩溃导出文件位置锁使用的jvm.dll路径。例如:
set PATH=\jre\bin\client;%PATH%
OPTIONS
<no option> 当没有选项,jmap复制共享对象映射。目标虚拟机中的每一个分享对象、开始地址、映射大小、完整路径被复制。这类似于Solaris中的pmap工具。
-dump:[live,]format=b,file=<filename> 把java堆导出成hprof二进制格式文件。live子选项是可选的。如果指定,只有堆中的活对象被导出。浏览堆镜像,你可以使用jhat。
-finalizerinfo 复制正在等待回收的对象信息
-heap 复制一个堆得概要。使用的GC算法堆配置,使用代的大小。
-histo[:live] 复制一个堆得柱状图。每个Java类,对象个数,内存大小(byte),类全路径。VM的内部类用*为前缀。如果live子选项被指定,只有活对象被计数。
-permstat 打印堆中永生代的类加载器的宽泛统计。每个加载器的名字,活性,地址,父加载器,它加载的类的大小。另外,驻留字符串的大小和数量。
-F 强制。使用jmap -dump 或者 jmap -histo 选项时,如果pid没有响应。在这个模式下live子选项不支持。
-h 帮助
-help 帮助
-J<flag> java虚拟机选项
分享到:
相关推荐
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解 本文将对一些常用的 JVM 性能调优监控工具进行介绍,包括 jps、jstack、jmap、jhat、jstat 等工具的使用详解。这些工具对于 Java 程序员来说是必备的,...
本篇文档详细介绍了JVM调优工具的命令使用及其相关知识点,涵盖了内存信息分析、死锁检测、JMX远程监控等方面的命令行工具的使用方法。 首先,文档提到了JPS命令,它用于查看当前运行的Java进程信息,并返回进程ID...
为了确保应用的高效运行和优化,开发者通常会使用一系列的JVM分析工具。以下是对这些工具的详细介绍: 1. **jmap**: `jmap` 是一个命令行工具,它允许开发者获取堆内存的详细信息,包括堆的配置、对象统计、类...
**jmap Eclipse内存分析工具详解** 在Java开发中,内存管理是至关重要的,尤其是在大型应用或者长时间运行的服务中,内存泄漏可能导致系统性能下降甚至崩溃。为了有效地检测和诊断内存问题,Oracle提供了`jmap`...
本文将介绍五种JVM监控工具:jstack、jconsole、jinfo、jmap和jdb。 jstack jstack是一款命令行工具,用于生成Java应用程序的崩溃dump文件的信息。该工具可以attach到正在运行的Java应用程序中,查看当前运行的...
### JVM工具、参数调优与调试技巧 #### 一、JVM工具 ##### 1. jps:虚拟机进程状况工具 - **简介**:`jps` 是一个用于显示当前运行的所有Java虚拟机进程(JVMs)的简单工具。它会列出每个JVM的PID(进程ID)以及...
4. **JInfo、JMap、JHAT**:这些是JDK自带的命令行工具,用于获取JVM信息、映射堆内存和进行堆转储分析。 5. **Grafana + Prometheus + JMX Exporter**:现代的监控解决方案,通过JMX Exporter将JVM指标暴露给...
1. **获取堆内存快照**:在JVM运行时,通过JMX或命令行工具(如jmap)获取内存快照。 2. **导入快照到MAT**:将获取的.hprof文件导入MAT进行分析。 3. **分析与诊断**:利用MAT的各种视图进行深入分析,如"Leak ...
为了有效地监控和调试Java应用程序,Oracle JDK提供了多种强大的命令行工具,如jconsole、jmap、jstat等。下面将详细解释这些工具的功能和使用场景。 1. **jstack**: jstack是一种用于生成Java线程堆栈跟踪的工具...
jmap是JDK自带的一个命令行工具,用于收集和分析JVM内存信息,主要包括堆内存、类加载器统计和对象 finalize 队列等。本文将详细介绍jmap的使用方法。 ### 前言 在Java性能调优过程中,开发者通常会使用各种开源...
使用MAT时,首先需要获取Java应用的堆转储文件,这通常可以通过JVM的命令行选项`-XX:+HeapDumpOnOutOfMemoryError`或者`jmap`工具来实现。然后在MAT中打开堆转储文件,通过以上提到的各种视图和报告,深入分析并解决...
本文将深入探讨六种关键的JVM监控工具——`jstack`, `jconsole`, `jinfo`, `jmap`, `jdb`, `jstat`——它们各自的功能、应用场景及如何帮助开发者和运维人员诊断并解决JVM中的复杂问题。 #### 1. jstack —— Java ...
本篇将重点介绍几种常用的JVM监控工具,包括jstack、jconsole、jinfo、jmap以及jdb和jstat。 首先,`jstack`是一个用于打印Java线程堆栈跟踪的工具。当应用出现死锁或者线程阻塞时,jstack可以帮助我们查看各个线程...
本文将深入探讨 VisualVM 及其集成的一系列命令行工具,包括 jps、jstat、jmap、jinfo、jstack 和 JConsole,帮助读者掌握 JVM 内存监控的核心技巧。 #### VisualVM:JVM 监控的全能工具 VisualVM 是一款功能强大...
Java虚拟机(JVM)监控工具对于理解和优化Java应用程序的性能至关重要。这些工具可以帮助开发者诊断内存泄漏、监控垃圾收集(GC)活动、查看线程状态以及检查JVM配置。以下是几种常用的JVM监控工具的详细介绍: 1. ...
了解并掌握JVM工具和参数调优技巧,可以帮助我们提升应用程序的性能,减少内存泄漏,优化资源利用,以及解决运行时问题。以下将详细介绍相关知识点。 一、JVM工具 1. **jps(Java Virtual Machine Process Status ...