Tomcat默认情况下会用系统的环境变量中找到JAVA_HOME和JRE_HOME。但是有的时候我们需要不同版本的JDK共存。

可以在${TOMCAT_HOME}/bin/catalina.bat最前面设置JAVA_HOME和JRE_HOME。  

 例如:         

set JAVA_HOME=E:\Program Files\Java\jdk1.7.0_65
set JRE_HOME=E:\Program Files\Java\jre7

或修改${TOMCAT_HOME}/bin/setclasspath.bat文件中添加

set "JAVA_HOME=C:\Program Files (x86)\Java\jdk_1.6_31_64"


在linux下Tomcat配置连接jdk路径${TOMCAT_HOME}/bin/catalina.sh或setenv.sh文件:

export JAVA_HOME=/usr/java/jdk1.7.0_55

或用的全一点如下设置(用上面只设置一个JAVA_HOME足够了):
export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export JRE_HOME=/usr/local/java/jdk1.8.0_162/jre
export PATH=$PATH:/usr/local/java/jdk1.8.0_162/bin
export CLASSPATH=/usr/local/java/jdk1.8.0_162/lib:/usr/local/java/jdk1.8.0_162/jre/lib


注:export JAVA_HOME=/usr/lib/java 的 “=”左右两边不能有空格。不然会报export: `/usr/lib/java': 不是有效的标识符


另外,有时需要设置Tomcat的最大内存,方法如下:

在catalina.bat的中加入

windows下在catalina.bat中添加:
set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128M -XX:MaxPermSize=512m

linux下在catalina.sh中添加:

JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m"