java.lang.OutOfMemoryError:在Jboss 7.1.1中部署时的Java堆空间

时间:2014-04-24 14:56:50

标签: java-ee jboss

我试图创建一个读取excel的小实用程序。我正在使用ApachePOI 3.9库。当我从红帽Jboss执行代码时,它工作正常

但是当我在服务器Jboss 7.1.1 Final中部署.war并执行时我得到了这个错误

ERROR [stderr] (thread-64) Exception in thread "Thread-64" Exception in thread "server-timer1" java.lang.OutOfMemoryError: Java heap space

2 个答案:

答案 0 :(得分:1)

请检查您的JVM内存分配池参数。如果您在独立模式下运行,您可以在JBOSS_HOME / bin / standalone.conf.bat中找到它

尝试将其设置为"JAVA_OPTS=-Xms1G -Xmx1G -XX:MaxPermSize=256M "并重新启动服务器,此设置是JBoss EAP6.2的默认设置

此外,如果这没有帮助,您可以使用Eclipse Memory Analyzer Find it here

分析堆

答案 1 :(得分:0)

第一步:   确保Redhat JBoss和JBoss 7.1.1中的JVM内存设置相同。可能是你的Redhat JBoss比JBoss 7.1.1有更高的内存分配。你可能需要提高你@amitsalyan所提到的jboss 7.1.1内存设置。

第二步:   如果服务器因Outofmemory错误而崩溃,请将JBoss 7.1.1配置为generate a heapdump以获得postmartum。

第三步:   如果服务器因outofmemory再次失败,则可能是由库或代码引起的内存泄漏。使用Eclipse MAT工具查找内存问题并修复它们。