CentOS 7 添加多版本Tomcat

一个CentOS上既有JDK1.7、Tomcat7,也有JDK1.8、Tomcat 8。为了切换方便,使用alternatives命令
参考链接: 用 alternatives 命令安装多个版本的 JDK.
参考链接: alternatives命令用法.

下载Tomcat

下载链接: Tomcat8.
下载链接: Tomcat7.

安装Tomcat 命令

// create tomcat dir
cd /usr/local/ && mkdir tomcat
//
tar -zxvf apache-tomcat-8.5.64.tar.gz
mv apache-tomcat-8.5.64 /usr/local/tomcat/tomcat8
//
tar -zxvf apache-tomcat-7.0.108.tar.gz
mv apache-tomcat-7.0.108 /usr/local/tomcat/tomcat7

添加alternatives版本

// tomcat8 默认
alternatives --install /usr/bin/catalina.sh catalina /usr/local/tomcat/tomcat7/bin/catalina.sh 10
alternatives --install /usr/bin/catalina.sh catalina /usr/local/tomcat/tomcat8/bin/catalina.sh 20
// 设置模式为auto,系统自动判定优先级高的为默认,模式有auto和manual
alternatives --auto catalina
// alter tomcat command
[root@centos7-18 home]# alternatives --config catalina

共有 2 个提供“catalina”的程序。

  选项    命令
-----------------------------------------------
   1           /usr/local/tomcat/tomcat7/bin/catalina.sh
*+ 2           /usr/local/tomcat/tomcat8/bin/catalina.sh

按 Enter 保留当前选项[+],或者键入选项编号:

修改Tomcat配置

// Edit tomcat7 catalina.sh
vim /usr/local/tomcat/tomcat7/bin/catalina.sh
// 在catalina.sh文件开头添加以下设置,如果是独占服务器设置为内存的一半。
# -----------------------------------------------------------------------------

JAVA_OPTS="-server -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Xms512m -Xmx512m  -XX:PermSize=256m -XX:MaxPermSize=256m"
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true -XX:+UseParallelGC  -XX:+UseParallelOldGC -XX:ParallelGCThreads=8 -XX:+PrintGCDetails  -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC  -XX:+PrintGCApplicationStoppedTime  -Xloggc:gc.out -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=javadump/"

# OS specific support.  $var _must_ be set to either true or false.
// Edit tomcat8 catalina.sh
vim /usr/local/tomcat/tomcat8/bin/catalina.sh
// 在catalina.sh文件开头添加以下设置,如果是独占服务器设置为内存的一半。
# -----------------------------------------------------------------------------

JAVA_OPTS="-server -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Xms512m -Xmx512m  -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m"
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true -XX:+UseParallelGC  -XX:+UseParallelOldGC -XX:ParallelGCThreads=8 -XX:+PrintGCDetails  -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC  -XX:+PrintGCApplicationStoppedTime  -Xloggc:gc.out -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=javadump/"

# OS specific support.  $var _must_ be set to either true or false.

修改环境变量

//  编辑/etc/profile
vim /etc/profile

profile中增加tomcat环境变量

// 获取java版本,见下参考链接
VER=$(java -version 2>&1 | sed '1!d' | sed -e 's/"//g' | awk '{print $3}')
// jdk1.7 对应tomcat7目录
if [[ $VER == *1.7.0* ]]
then
    CATALINA_HOME='/usr/local/tomcat/tomcat7'
// jdk1.8 对应tomcat8目录
elif [[ $VER = *1.8.0* ]]
then
    CATALINA_HOME='/usr/local/tomcat/tomcat8'
else
    CATALINA_HOME=""
fi
// 如果CATALINA_HOME有值,就添加路径
if [[ CATALINA_HOME != "" ]]
then
    CLASSPATH=$CLASSPATH:$CATALINA_HOME/lib
    PATH=$CATALINA_HOME/bin:$PATH
    export CATALINA_HOME CLASSPATH PATH
fi

参考链接: linux shell 获取java版本号.

重新加载,使环境变量生效

//  编辑/etc/profile
source /etc/profile

猜你喜欢

转载自blog.csdn.net/shijin741231/article/details/115117039