【问题标题】:CATALINA_HOME path set upCATALINA_HOME 路径设置
【发布时间】:2012-09-19 08:29:46
【问题描述】:

在安装Tomcat的过程中,多个论坛都需要设置CATALINA_HOME变量,并指向Tomcat的父目录。我正在通过 Eclipse 运行 Web 项目,它在存在和没有设置此环境变量的情况下运行。

我想知道这个变量的具体用途是什么,以及什么时候必须设置它。

我也想知道 Tomcat/bin 目录下的 tomcat-juli.jar 的具体用法

【问题讨论】:

    标签: java tomcat web catalina


    【解决方案1】:

    Q>这个变量解决的具体目的是什么
    A> Javadoc 类的 Bootstrap 说:

    这个应用程序构造了一个类加载器,用于加载 Catalina 内部类(通过累积找到的所有 JAR 文件 在“catalina.home”下的“server”目录中),然后启动 定期执行容器。这个环岛的目的 方法是保留 Catalina 内部类(以及任何其他 它们依赖的类,例如 XML 解析器)在系统类之外 路径,因此对应用程序级别的类不可见。

    但还有更多。 CATALINA_HOME 和(可互换)CATALINA_BASE 定义了一个“基础目录”,用于引用work 目录(用于保存编译好的jsps),也有助于查找上下文配置文件等。

    可能是 Eclipse 在您不知情的情况下设置了这些属性。打印所有system properties 以查看其中的内容。

    Q>什么时候必须设置它
    A> 据我所知

    Q>tomcat-juli.jar的具体使用
    A> 直接来自Tomcat documentation

    Apache Tomcat 有自己的几个关键元素的实现 java.util.logging API。这个实现被称为“JULI”。钥匙 组件有一个自定义的 LogManager 实现,即知道 在 Tomcat 上运行的不同 Web 应用程序(以及它们的不同 类加载器)。它支持私有的每个应用程序日志记录 配置。当 Web 应用程序运行时,Tomcat 也会通知它 从内存中卸载,以便对其类的引用可以 清除,防止内存泄漏。

    【讨论】:

      【解决方案2】:

      安装 Tomcat 后,请检查 java 选项下的 tomcat 属性,默认情况下已设置以下变量。

      -Dcatalina.home=C:\Program Files (x86)\Apache Software Foundation\Tomcat 6.0 
      
      -Dcatalina.base=C:\Program Files (x86)\Apache Software Foundation\Tomcat 6.0 
      
      -Djava.endorsed.dirs=C:\Program Files (x86)\Apache Software Foundation\Tomcat 6.0\endorsed 
      
      -Djava.io.tmpdir=C:\Program Files (x86)\Apache Software Foundation\Tomcat 6.0\temp 
      
      -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
      
      -Djava.util.logging.config.file=C:\Program Files (x86)\Apache SoftwareFoundation\Tomcat 
      6.0\conf\logging.properties 
      

      您不需要自己设置 CATALINA_HOME ,即使在 Eclipse 中运行也是如此。 唯一需要设置 CATALINA_HOME 和/或 CATALINA_BASE 的情况是要覆盖默认值。最常见的是,如果您使用相同的 Tomcat 二进制文件来运行多个 Tomcat 实例,您会这样做。

      tomcat-juli.jar

      此 tomcat-juli.jar 是用于记录目的的第三方组件。它包含完整的 Apache Commons Logging 实现,因此能够发现 log4j 的存在并进行自我配置。

      如何使用 tomcat-juli.jar

      如果你想将 Tomcat 配置为全局使用 log4j:

      1. 下载或构建可用作 Tomcat 的“附加”组件的 tomcat-juli.jar 和 tomcat-juli-adapters.jar。
      2. 将 log4j.jar 和 tomcat-juli-adapters.jar 从“extras”放入 $CATALINA_HOME/lib。 将 $CATALINA_HOME/bin/tomcat-juli.jar 替换为 "extras" 中的 tomcat-juli.jar。

      【讨论】:

        猜你喜欢
        • 2012-06-01
        • 2018-06-30
        • 2016-05-24
        • 2012-08-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多