在试图将-XX:OnOutOfMemoryError="kill -9 %p"命令传递到jvm中时,我遇到了问题。
我正在使用Jetty7,并将其放在start.ini文件中。启动时,请给我下面的错误。这是jre /jre1.6.0_03l64
启动Jetty:启动Jetty 2011年4月26日09:54:26 未获承认的备选方案:-9 无法创建Java虚拟机。
start.ini文件如下所示。
#===========================================================
# If the arguements in this file include JVM arguments
# (eg -Xmx512m) or JVM System properties (eg com.sun.???),
# then these will not take affect unless the --exec
# parameter is included or if the output from --dry-run
# is executed like:
# eval $(java -jar start.jar --dry-run)
#
# Below are some recommended options for Sun's JRE
#-----------------------------------------------------------
--exec
# -Dcom.sun.management.jmxremote
-Xmx4096m
-Xmn512m
-DLABEL=PROD_APP
-verbose:gc
-Xloggc:/export/opt/prod_app/logs/gc.log
-XX:OnOutOfMemoryError="kill -9 %p"
# -XX:+PrintGCDateStamps
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-XX:+PrintTenuringDistribution
# -XX:+PrintCommandLineFlags
# -XX:+DisableExplicitGC
# -XX:+UseConcMarkSweepGC
# -XX:ParallelCMSThreads=2
# -XX:+CMSClassUnloadingEnabled
# -XX:+UseCMSCompactAtFullCollection
# -XX:CMSInitiatingOccupancyFraction=80评论这一行的码头将开始良好,没有问题。但是,由于系统内存泄漏,我们确实需要添加此arg,以防止在进程结束时发生进一步损坏。
有没有人知道我在这里做错了什么,或者我怎样才能解决这个问题?
发布于 2016-11-24 16:00:12
在JavaVersion8u92中,VM参数
-XX:+ExitOnOutOfMemoryError-XX:+CrashOnOutOfMemoryError被添加,请参见发布说明。
ExitOnOutOfMemoryError 启用此选项时,JVM将在第一次出现内存不足错误时退出。如果您希望重新启动JVM的实例,而不是处理内存不足的错误,则可以使用它。 CrashOnOutOfMemoryError 如果启用此选项,则当出现内存不足错误时,JVM会崩溃并生成文本和二进制崩溃文件。
增强请求:JDK-8138745 (通过JDK-8154713、ExitOnOutOfMemoryError而不是ExitOnOutOfMemory参数命名错误)
发布于 2013-05-23 21:25:29
作为hadoop选项运行,我也遇到了同样的问题。这就是答案:
-XX:OnOutOfMemoryError='kill -9 %p'下面是OOM的标准:
#
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="kill -9 %p"
# Executing /bin/sh -c "kill -9 11902"...我也试过:
-XX:OnOutOfMemoryError='"kill -9 %p"'它开始了,但在OOM上
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="kill' '-9' '%p"
# Executing /bin/sh -c "kill' '-9' '1164"...但是STDERR有: sh:杀害-9 1164:命令未找到
这些都不会开始:
'-XX:OnOutOfMemoryError=kill -9 %p'
"-XX:OnOutOfMemoryError=kill -9 %p"
-XX:OnOutOfMemoryError="kill -9 %p"发布于 2013-06-10 16:24:28
单引号版本现在应该可以在jetty >9.0.4中正常工作。
https://stackoverflow.com/questions/5792049
复制相似问题