JVM 自带工具的使用

HSDB的使用

作用: 从JVM中持久化类即把动态生成或者正常加载的类保存为.class文件;

  1. 以管理员方式运行CMD
    注意: 不要在C:\Windows\system32> 下运行, 会保存不了*.class文件
java -classpath "%JAVA_HOME%/lib/sa-jdi.jar" sun.jvm.hotspot.HSDB
  1. 获取进程ID
jps -l 
  1. 然后在HSDB GUI界面上操作: file-->attach to hotspot process->输入jps -l获取的PID,在链接成功后;
    ->Tools--> Class browser->点击 Create.class File->保存在执行HSDB命令的文件夹下面->查看保存的class文件

  2. Issue
    1). 出现 windbg Error: WaitForEvent failed!, 使用管理员方式运行;
    2). 出现 Can't load library: C:\Program Files\Java\jre{对应VERSION}\bin\sawindbg.dll, 把jdk{对应VERSION}/jre/bin/sawinbg.dll,复制到jre的bin目录下

posted @ 2022-02-28 11:56  那年长安  阅读(158)  评论(0编辑  收藏  举报