今天在给 tomcat 版本7.0.57升级到7.0.72的时候,碰到一个奇怪的问题,启动 tomcat7.0.72 的时候报错,找不到tomcat7.0.57/bin/setclasspath.sh 文件,当时我就懵了,我启动tomcat7.0.72 怎么却报tomcat7.0.57下的文件,思来想去只能说两个tomcat 使用了系统下同一系统变量$CATALINA_HOME,根据这个思路我找到了解决方法。
问题:
1、在当前tomcat bin 目录下,创建文件 setenv.sh 。该脚本作用是动态获取Tomcat 主目录给 CATALINA_HOME 赋值。
内容:
#!/bin/sh
#get tomca dir
CATALINA_HOME=$(cd `dirname $0`;cd ..;pwd)
2、最后使用 chmod +x setenv.sh 赋予可执行权限,重启tomcat 服务就ok了。