Hotspot Debugger是 JDK自带的工具,用于查看 JVM运行时的状态。每个版本 JDK都带有 HSDB功能,在 JDK9以前没有 .exe程序,需要命令打开 HSDB。之后版本就出现 JHSDB.exe,它在 bin目录下。本文是在 JDK8环境中。每个版本 JDK的 HSDB功能有细微差异,也有不少的 bug。部分的 jdk1.8版本,用 scanoops直接返回空白。用 jdk16,没有了 mem命令很不方便。
    对于jdk8找到sa-jdi.jar所在的目录
    image.png
    运行进入到cmd命令:
    image.png
    运行命令:

    1. java -cp sa-jdi.jar sun.jvm.hotspot.HSDB

    会弹出工具窗口
    image.png
    选择附加到某个运行的jvm上
    image.png
    image.png
    找到需要附着的java进程id,并输入,点击OK即可,进入到如下窗口
    image.png
    tools中有许多工具可以使用
    image.png