Jboss-eap-6.3无法为对象堆保留足够的空间

时间:2014-10-14 08:41:53

标签: java jboss6.x

我在32位Windows上运行Java7 当我运行Jboss-eap-6.3服务器时,每次尝试运行程序时都会反复出现以下异常。

  • D:\mysoft\jboss-eap-6.3\bin>standalone.bat
  • 致电D:\mysoft\jboss-eap-6.3\bin\standalone.conf.bat
  • 将JAVA属性设置为C:\Program Files\Java\jdk1.7.0_10\bin\java

JBoss Bootstrap Environment
JBOSS_HOME: "D:\mysoft\jboss-eap-6.3"
JAVA: "C:\Program Files\Java\jdk1.7.0_10\bin\java"

JAVA_OPTS: "-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-Tra
ceClassUnloading -client -Dprogram.name=standalone.bat -Xms1G -Xmx1G -XX:MaxPermSize=256M -Djava.net.preferIPv4Stack=true  -Djboss.modules.policy-per
missions=true  -Djboss.modules.system.pkgs=org.jboss.byteman"

...
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

任何人都可以帮助我吗?

5 个答案:

答案 0 :(得分:5)

您还可以通过更改standalone.conf.bat下的JAVA_OPTS值来解决此问题。

rem # JVM memory allocation pool parameters - modify as appropriate.
set "JAVA_OPTS=-Xms1303M -Xmx1303M -XX:MaxPermSize=256M"

set "JAVA_OPTS=-Xms256M -Xmx256M -XX:MaxPermSize=256M"

答案 1 :(得分:4)

这实际上是启动脚本的问题。这是https://bugzilla.redhat.com/show_bug.cgi?id=956281的错误。解决方法是从JAVA_OPTS行中删除 perm gen 设置:

Cause: The max perm gen space parameter is causing the JVM to not be created, which then prevents the server from starting.  This is specifically on Windows 8 32-bit JVM.
Consequence: The server will not start.
Workaround (if any): Remove the -XX:MaxPermSize=256m

答案 2 :(得分:2)

您的机器可用的内存是多少? 我看到参数-Xms1G -Xmx1G。这意味着您的JVM将以Xms=1GB内存量启动,并且最多可以使用Xmx=1GB个内存量。

我想,可能是你减少了内存量(比如-Xmx2048m -Xms256m)。

我希望它有所帮助。

您可以参考this

答案 3 :(得分:1)

根据以上Federico Sierra的回答 存在jboss-eap-6.3\domain\configuration位置host.xml文件。在该文件中,我刚评论了以下内容:

<permgen size="256m" max-size="256m"/>

它正在运作。谢谢Federico Sierra。

答案 4 :(得分:1)

如果在尝试以上所有选项后仍然无法正常工作。 去: jboss-eap-6.4 \ domain \ configuration - &gt; host.xml,并设置此大小

<heap size="256m" max-size="256m"/>

还可以去: jboss-eap-6.4 \ standalone \ configuration - &gt; standalone.xml,设置此大小

set "JAVA_OPTS=-Xms256M -Xmx256M -XX:MaxPermSize=256M"

现在重新启动Eclipse并尝试运行它应该正常运行的Jboss6.1 +服务器。

同样在host.xml: <permgen size="256m" max-size="256m"/>中设置 祝你好运。