tomcat报错:The BASEDIR environment variable is not defined

最近,接到生产环境tomcat报错求助,在部署新tomcat的时候,出现了诡异到报错。报错信息如下:

The BASEDIR environment variable is not defined

This environment variable is needed to run this program

都说百度是最好的老师,首先去请教老师。老师及各位师兄弟千叮咛万嘱咐说是/bin目录下.sh执行脚本权限不足,需要chmod +x *.sh赋权。感谢完老师及师兄弟后,欣喜异常,又可以展现真正的技术了!

一气呵成的登录操作系统,cd到tomcat/bin目录下,心里面感谢了八百遍”老师”后,毅然决然的执行了赋权命令。执行下验证./version.sh。让人绝望的事情发生了,故障依旧。

肯定是我打开的方式不对,跑到老师及师兄那里,询问了很大一圈。都坚定的告诉我肯定是我的问题。相信老师及师兄们的判断,首先开始检查环境变量,其余都是很普通的设置,只发现了如下变量设置:

CATALINA_HOME=/home/www/tomcat1

CATALINA_HOME2=/home/www/tomcat2

依稀记得,老师和师兄弟们说过这样设置是没有问题的。为了解决部署多个tomcat的情况。依稀还记得,在配置catalina.sh中,有获取catalina_home的方式。代码如下:

# Only set CATALINA_HOME if not already set

[ -z “$CATALINA_HOME” ] && CATALINA_HOME=`cd “$PRGDIR/..” >/dev/null; pwd`

# Copy CATALINA_BASE from CATALINA_HOME if not already set

[ -z “$CATALINA_BASE” ] && CATALINA_BASE=”$CATALINA_HOME”

在没有设置catalina_home的情况下,会使用当前tomcat的路径。会不会是因为在环境变量中设置了CATALINA_HOME导致新的tomcat会跳过该判断,去使用tomcat1的路径呢?

用户环境变量中,注释掉CATALINA_HOME=/home/www/tomcat1。使得环境变量生效,source .bash_profile,退出并重新登录,问题解决。

   总结

老师及师兄弟很多内容是真实存在的,但是,其中也有些是互相粘贴复制的。还是多鉴别真才实学的师兄弟,跟他多交流。

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
免责声明: IT学馆所发布的一切资源及文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。admin@itxueguan.com
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论