设置方法
为解决这个问题,我们建议使用tomcat推荐的方法,创建一个新的setenv.bat/setenv.sh文件,来配置tomcat的启动参数。请参考如下步骤。
#!/bin/sh # catalina.sh # ----------------------------------------------------------------------------- # Control Script for the CATALINA Server # # Environment Variable Prerequisites # # 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. # # ----------------------------------------------------------------------------- |
---|
对于Windows系统和Linux系统设置方法不同,分别说明如下:
Windows系统
1、本地创建一个文本文件,另存为setenv.bat 文件,对于jdk7环境,其内容参考如下,前3行的路径需要结合实际情况修改。
set "JAVA_HOME=C:\Program Files\Java\jdk1.7.0_51" set "JRE_HOME=C:\Program Files\Java\jdk1.7.0_51\jre" set "CATALINA_HOME=d:\smartbi\tomcat" set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=GBK -Duser.region=CN -Duser.language=zh -Djava.awt.headless=true -Xms8192m -Xmx8192m -XX:MaxMetaspaceSize=512m -Dmail.mime.splitlongparameters=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -XX:+UseG1GC"
2、把该文件setenv.bat,上传到tomcat/bin目录下即可。
若注册为后台服务,修改参数请参考 修改Java内存。
Linux/Unix系统
1、本地创建一个文本文件,另存为“setenv.sh”文件,其内容参考如下,前3行的路径需要结合实际情况修改。
export JAVA_HOME="/data/smartbi/jdk1.7.0_45" export JRE_HOME="/data/smartbi/jdk1.7.0_45/jre" export CATALINA_HOME="/opt/smartbi/tomcat" export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8 -Duser.region=CN -Duser.language=zh -Djava.awt.headless=true -Xms8192m -Xmx8192m -XX:MaxMetaspaceSize=512m -Dmail.mime.splitlongparameters=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -XX:+UseG1GC"
2、把该文件setenv.sh,上传到tomcat/bin目录下。
3、上传到tomcat/bin目录下的setenv.sh文件是文本文件,需要赋予其“执行”权限,请执行如下命令。
chmod +x setenv.sh
注意事项
如果使用的 jdk 是 1.8 版本,请注意修改内存参数。
在 HotSpot jdk 1.8 版本中,已经删除了 -XX:MaxPermSize 参数,可以使用 -XX:MaxMetaspaceSize 代替它。
具体说明,请参考:Java8内存模型—永久代(PermGen)和元空间(Metaspace)
export JAVA_OPTS="$JAVA_OPTS -Xms8192m -Xmx8192m -XX:MaxMetaspaceSize=512m"