我试图创建一个读取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
答案 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工具查找内存问题并修复它们。