我在tomcat服务器上收到此错误。
Exception in thread "http-bio-8080-exec-17"
Exception in thread "http-bio-8080-exec-2"
Exception in thread "http-bio-8080-exec-15"
Exception in thread "http-bio-8080-exec-20"
Exception in thread "http-bio-8080-exec-18"
java.lang.OutOfMemoryError: Java heap space.
我见过MAT但是如何在Tomcat服务器中生成.hprof
文件。
谢谢。
答案 0 :(得分:16)
删除错误编辑文件
/etc/default/tomcat7
替换为:
JAVA_OPTS="-Djava.awt.headless=true -Xmx1280m -XX:+UseConcMarkSweepGC"
然后重新启动Web服务器。
Xmx
是新的最大内存大小,您的机器应该可以负担得起。
答案 1 :(得分:11)
将此行添加到/path/to/tomcat/bin/setenv.sh
(如果不存在则创建它):
CATALINA_OPTS="$CATALINA_OPTS -server -Xms256m -Xmx1024m"
这会将tomcat的堆大小增加到1024MB。
答案 2 :(得分:5)
根据您的操作系统解决方案:
如果Ubuntu
:
在用户主文件夹中打开.bashrc文件(隐藏),在最后2-3行中添加或编辑一行:
export CATALINA_OPTS="-Xms512m -Xmx1024m"
其他Windows
:
在您的环境变量中添加/编辑
CATALINA_OPTS = "-Xms512m -Xmx1024m"
答案 3 :(得分:0)
转到 /bin 并为 Linux 系统创建一个名为 setenv.sh 的文件或为 Windows 创建一个名为 setenv.bat 的文件。
在 setenv 文件中,使用以下格式使用以下参数设置堆大小:
-Linux:
export CATALINA_OPTS="-Xms4096M -Xmx4096M"
-Windows:
set CATALINA_OPTS=-Xms4096M -Xmx4096M