如何让HotSpot VM进入调试模式?

5
我需要HotSpot VM处于调试模式的原因是我想要一些JVM选项(例如-XX:+PrintCFGFile)得到支持。我的当前JVM版本如下:
java version "1.6.0_24" OpenJDK Runtime Environment(IcedTea6 1.11.1)(suse-3.1-x86_64) OpenJDK 64-Bit Server VM(build 20.0-b12,mixed mode)
我是否需要安装某些工具/补丁来实现这一点?
谢谢!
2个回答

4
经过一番搜索,问题似乎更加明朗了。
无法使用选项-XX:PrintCFGToFile的原因是我所使用的JVM是产品版本,而不是调试版本。
我找到了一个网站,提供了JVM的调试版本。以下是链接:http://download.java.net/jdk6/6u25/promoted/b03/index.html 我测试了版本jdk-6u25-ea-bin-b03-windows-i586-debug-27_feb_2011.jar,它运行良好,可以使用我上面提到的选项,并且执行Java程序后会生成一个output.cfg文件。
安装后,将会有一系列文件夹\jdk1.6.0_25\fastdebug>。我得到以下版本信息:
java version "1.6.0_25-ea-fastdebug"
Java(TM) SE Runtime Environment (build 1.6.0_25-ea-fastdebug-b03)
Java HotSpot(TM) Client VM (build 20.0-b10-fastdebug, mixed mode)

-3

来自jdb手册:

“使用jdb调试的虚拟机必须使用以下选项启动:-agentlib:jdwp=transport=dt_shmem,server=y,suspend=n”

这将加载进程内调试库并指定要建立的连接类型。


1
你为什么要回答这个问题?他在问如何打印C1编译图,这需要一个快速调试版本的HotSpot。你复制粘贴了一些关于连接JVM调试器的内容。 - Marcus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接