TOMCAT_HOME 对比 CATALINA_HOME

TOMCAT_HOME vs CATALINA_HOME

我最近一直在更新一些文档(我们从 Apache Tomcat 7 移动到 8)并注意到对 TOMCAT_HOME 的引用。比如创建环境变量TOMCAT_HOME。如果我是正确的,TOMCAT_HOME 在版本 3 中几乎被弃用并被 CATALINA_HOMECATALINA_BASE 取代?但是,我找不到关于此或何时使用 TOMCAT_HOME 而不是 CATALINA_HOME 的任何权威文章。当然我没有设置两者!?对此有确定的答案吗?流行的第三方应用程序是否寻找 TOMCAT_HOME 而不是 CATALINA_HOME

Tomcat 分为两部分。 Tomcat 的所有实例共有一个部分。它包含诸如 bin 和 lib 目录之类的内容。

另一部分是按实例复制的。它包含工作、临时和日志目录。和 conf,这是定义给定 Tomcat 实例使用哪些端口的 server.xml 所在的位置。

所以对于 运行(和 start/stop)多个 Tomcat 实例,你不再有 CATALINA_HOME 和 CATALINA_BASE 瞄准同一个 "TOMCAT_HOME" 目录,而是所有 Tomcat 有一个 CATALINA_HOME,每个 Tomcat.

有一个单独的 CATALINA_BASE

如果您在单个主机上 运行 设置 Tomcat 的多个实例,您应该将 CATALINA_BASE 设置为等于 .../tomcat_instance1 或 . ../tomcat_instance2 适用于每个实例的目录和 CATALINA_HOME 公共 Tomcat 安装的环境变量,其文件将在两个实例之间共享。

没有 TOMCAT_HOME 也没有。只有 CATALINA_* -- 仍在 Tomcat 9。我假设 Mark Thomas 出于兼容性原因没有触及它。

不要发明自己的环境变量——它们只会造成混乱。