JVM 自带工具的使用
HSDB的使用
作用: 从JVM中持久化类即把动态生成或者正常加载的类保存为.class文件;
- 以管理员方式运行
CMD
注意: 不要在C:\Windows\system32>
下运行, 会保存不了*.class文件
java -classpath "%JAVA_HOME%/lib/sa-jdi.jar" sun.jvm.hotspot.HSDB
- 获取进程ID
jps -l
-
然后在HSDB GUI界面上操作: file-->attach to hotspot process->输入
jps -l
获取的PID,在链接成功后;
->Tools--> Class browser->点击 Create.class File->保存在执行HSDB命令的文件夹下面->查看保存的class文件 -
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目录下