1

我正在使用CATALINA_HOME/CATALINA_BASE配置使用 Tomcat 7 服务器。根据此配置,Tomcat 服务器可以使用命令$CATALINA_BASE/bin/catalina.sh start或启动$CATALINA_BASE/bin/catalina.sh run,具体取决于您的兴趣。

这种方法有一些非常有趣的优点:可以对 CATALINA_BASE 文件夹进行版本控制,而如果您想更改 Tomcat 版本,可以轻松地更改 CATALINA_HOME 文件夹。

尝试在 Eclipse 上配置 Tomcat 服务器而不修改任何服务器 (CATALINA_BASE) 文件时会出现问题:实际上 Tomcat 服务器集成在 Eclipse 中,我还没有找到配置来调用$CATALINA_BASE/bin/catalina.sh start脚本以完全利用BASE/HOME 配置的强大功能。

我确信这可以在 IntelliJ IDEA 和 NetBeans 中完成,但是,当然,我不想使用这些 IDE。

你们中有人有类似的问题/要求吗?

4

2 回答 2

0

不确定我是否完全理解您的问题,但是当您在 Eclipse 中创建 Tomcat 服务器时,它代表一个实例,实际上是 $CATALINA_BASE 将指向的新目录。它将包含您要在该实例中部署的配置和应用程序。

Tomcat 二进制文件 ($CATALINA_HOME) 在 Eclipse 中对应于“运行时环境”。您可以随时打开服务器配置并通过更改“运行时环境”来更改 Tomcat 二进制文件版本,并在新的 Tomcat 版本上运行现有的实例配置和应用程序。

总之,如果您更改“运行时环境”,您将更改 $CATALINA_HOME,而创建新服务器将“更改”$CATALINA_BASE。

我澄清了你的疑问吗?

于 2014-03-26T17:01:43.010 回答
0

我一直在处理同样的问题。在这一点上,Eclipse (Oxygen) 似乎不支持这一点。

当您在 Eclipse 中创建“服务器”时,它有一个“服务器位置”部分,可让您设置“服务器路径(即 catalina.base)”。我以为这就是解决办法。不幸的是,那是 Eclipse 的目标 catalina.base,而源代码仍然是 Tomcat 安装目录。

因此,当我更新服务器路径以指向我的 CATALINA_BASE 时,Tomcat 最终将 Tomcat 安装目录中的 conf 文件复制到了我在 CATALINA_BASE 中的 conf 文件之上。那时我真的很高兴我的 CATALINA_BASE 已检查到版本控制中。

现在,我将 CATALINA_HOME 和 CATALINA_BASE 设置为同一个目录,并且我使用 .gitignore 将 bin 和 lib 中不需要的二进制文件保留在我的存储库之外。它不是最佳的,因为当新版本的 Tomcat 出现时会很麻烦,但是在 Eclipse 支持拥有单独的 CATALINA_HOME 和 CATALINA_BASE 目录之前,它必须这样做。

于 2019-04-02T23:46:01.467 回答