启动tomcat时报错:Exception in thread "http-bio-8080-exec-42"

2025-04-02 22:22:16
推荐回答(4个)
回答(1):

解决方案一:

设置MyEclipse中Tomcat使用的Jdk的VM arguments:

-Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:MaxPermSize=512m

如图:


解决方法二:  

手动设置MaxPermSize大小
修改TOMCAT_HOME/bin/catalina.bat(Linux下为catalina.sh),在“echo "Using CATALINA_BASE:   $CATALINA_BASE"”上面加入以下行:
set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128M -XX:MaxPermSize=512m
catalina.sh下为:
JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=512m"

回答(2):

内存溢出啊~
解决方法: . 手动设置MaxPermSize大小
修改TOMCAT_HOME/bin/catalina.bat(Linux下为catalina.sh),在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:
set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128M -XX:MaxPermSize=512m
catalina.sh下为:
JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=512m"

回答(3):

修改tomcat的启动脚本,加大分配给jvm的内存
windows环境下修改catalina.bat,在开始的地方增加:
set JAVA_OPTS=-Xms512m -Xmx1024m

回答(4):

参考你的服务器配置,然后做如下更改(注意飘红的数字):
Windows:
Modify bin\catalina.bat
Unix:
Modify catalina.sh
Add following scripts below"echo Using CATALINA_BASE: "%CATALINA_BASE%""
rem ----- Execute The Requested Command ---------------------------------------
set JAVA_OPTS=%JAVA_OPTS% -Xms2048m -Xmx4096m -XX:CompileThreshold=8000 -XX:PermSize=1024m -XX:MaxPermSize=2048m -Xverify:none -da
echo Using JAVA_OPTS:%JAVA_OPTS%
echo Using CATALINA_BASE: "%CATALINA_BASE%"