windows 环境,将项目部署到 tomcat,用 startup.bat 启动 tomcat,启动到一半,窗口就消失了。

这时候到 logs 目录下查看 catalina.xxx.log 文件,报了一个错:

java.lang.OutOfMemoryError: PermGen space

这是内存溢出的错误,可以通过设置启动参数来解决。

windows 环境

windows 环境,找到 bin 目录下的 catalina.bat,在 “echo Using CATALINA_BASE: “%CATALINA_BASE%” 上面 加入以下参数

set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128M -XX:MaxPermSize=512m

linux 环境

如果是 linux 环境,则是在 catalina.sh 加入以下参数

JAVA_OPTS=$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=512m

eclipse

如果是用 eclipse 启动,则需要修改 tomcat 的启动参数

  1. 打开Run Configurations

image

  1. 在VM arguments的最后面加上:-Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxPermSize=512m

image

  1. 再次启动服务即可

原文链接:https://miansen.wang/2019/06/22/1/