无法识别的VM选项'+ HeapDumpOnCtrlBreak'

时间:2012-03-06 03:04:02

标签: java jboss jvm jvm-arguments

我正在使用Jboss,我向JAVA_OPTS添加了-XX:+HeapDumpOnCtrlBreak选项。 但是我在启动Jboss时遇到了错误:

Unrecognized VM option '+HeapDumpOnCtrlBreak'
Could not create the Java virtual machine.

我在网上搜索过,似乎JDK 6不支持此选项,因此我更改为jdk1.5.0_09但仍然出现此错误。

有谁知道什么是错的?

4 个答案:

答案 0 :(得分:6)

该选项即使在JDK 1.7更新25上也不起作用:

>>java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b16)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

>>java -XX:+HeapDumpOnCtrlBreak
Unrecognized VM option 'HeapDumpOnCtrlBreak'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

答案 1 :(得分:2)

好吧,好像我需要Java SE版本5.0更新14或更高版本。

答案 2 :(得分:1)

1.4.2_21的变化 http://www.oracle.com/technetwork/java/javase/documentation/overview-142120.html

  • 6321286 java serviceability将-dump选项添加到jmap,以便可以从正在运行的VM获取协作堆转储。
  • 6454676 java serviceability需要-XX:+ HeapDumpOnCtrlBreak在ctrl-break或ctrl上触发堆转储 - \
  • 6608975 java可维护性HeapDumpOnCtrlBreak功能写入的转储忽略HeapDumpPath选项

升级到Jdk 1.4.2_21 +可以帮助我们支持这种堆转储生成功能

答案 3 :(得分:1)

HotSpot JVM中的

-XX:+HeapDumpOnCtrlBreak(由Sun / Oracle提供)存在于1.4.2_12或更高版本以及1.5.0_14或更高版本中。对于JVM 1.6,1.7,1.8,此选项不再存在,但您可以使用“jmap”工具(jmap.exe -dump:format=b,file=HeapDump.hprof

在HP-UX JVM中,该选项存在于版本1.4.2_11或更高版本以及1.5.0_05及更高版本中。在所有后期版本(1.6,1.7)中。

有关更多信息,请参阅A searchable collection of JVM options - HeapDumpOnCtrlBreak