背景:服务器是别人的,估计是用过安装版的tomcat,后来把目录删除了。
我把压缩版的tomcat放到服务器上,启动时./startup.sh ,报错

Cannot find /usr/tomcat/apache-tomcat-9.0.0.M3/bin/setclasspath.sh
This file is needed to run this program

找了一下,这个报错信息是catalina.sh中164行的报错,试着打印了$CATALINA_HOME,果然是/usr/tomcat/apache-tomcat-9.0.0.M3,这个估计是就是原来安装版的tomcat目录。

看看环境变量,直接输入

echo $CATALINA\_HOME #输出/usr/tomcat/apache-tomcat-9.0.0.M3,安装版的tomcat增加了一个环境变量

查看catalina.sh的第114行,判断了是否有CATALINA_HOME变量,如果没有则使用当前目录。

解决:删掉CATALINA_HOME环境变量即可。