要獲取JVM內存快照,可以使用以下兩種方法:
使用JDK提供的jmap
命令。在命令行中執行以下命令:
jmap -dump:format=b,file=<文件名> <進程ID>
其中,<文件名>
是保存內存快照的文件名,<進程ID>
是目標JVM進程的ID。執行完該命令后,將會生成一個二進制文件,即為JVM的內存快照。
使用JDK提供的jcmd
命令。在命令行中執行以下命令:
jcmd <進程ID> GC.heap_dump <文件名>
其中,<進程ID>
是目標JVM進程的ID,<文件名>
是保存內存快照的文件名。執行完該命令后,將會生成一個hprof文件,即為JVM的內存快照。
無論是使用jmap
還是jcmd
,都需要確保JDK的bin
目錄已經添加到系統的環境變量中。另外,獲取內存快照會影響JVM的性能,因此建議在非生產環境下進行操作。