近来在启动一个web项目时,Tomcat报了以下的异常
java.lang.OutOfMemoryError: PermGen space
一眼看来,应该是Tomcat使用的JDK的永久代内存不够,所以,那么给JDK加内存呗。
给tomcat指定内存可以参照以下两种方式:
修改 TOMCAT_HOME/bin/catalina.sh
JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=512m"上面的方法虽然也可以,不过却不建议采用这种方式,因为在 catalina.sh 有说明
Do not set the variables in this script. Instead put them into a script
setenv.sh in CATALINA_BASE/bin to keep your customizations separate.
- 所以,按照Tomcat官方建议,我们在 TOMCAT_HOME/bin 目录下新建setenv.sh文件,内容为
JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=512m"
本文介绍了当启动Web项目时遇到Tomcat PermGen错误的原因及解决办法。通过调整JVM参数,特别是永久代的大小,可以有效避免此问题。文章还遵循Tomcat官方建议,在setenv.sh文件中设置JAVA_OPTS变量。
198

被折叠的 条评论
为什么被折叠?



