0

环境:Windows 2003 32 位(我知道,我知道我们正在迁移到 64 位,但很快)

  • 阿帕奇雄猫
  • 6.0.35
  • JAVA_HOME
  • CATALINA_HOME

已配置

转到 Tomcat6w.exe 的 Java 选项卡,我们看到:

C:\tomcat\bin\tomcat-juli.jar;
C:\tomcat\bin\tomcat-juli.jar;
C:\tomcat\bin\bootstrap.jar

为什么有不止一个实例:tomcat-juli.jar?

了解Juli是:Java Utility Logging Implementation

我的问题是,即使定义了一个 juli .. 为什么有两个?我们是否只是将其保持在 2 并让系统正常运行?

4

1 回答 1

4

它是以JRE中的java.util.logging包命名的“Java Util Logging Implementation”。

JULI 本质上是重新打包的 Apache Commons Logging,删除了所有框架检测代码并进行了硬编码以使用特定的日志框架。默认情况下它使用 jul 但在附加下载中也有一个使用 log4j 的版本。

您看到重复输入是有原因的,但首先我需要解释一些背景。

Tomcat 支持“高级”配置,其中二进制文件与实例分开,因此您可以使用同一组二进制文件 ($CATALINA_HOME) 拥有多个 Tomcat 实例 ($CATALINA_BASE)。这使得升级非常简单。在这种高级配置中,不同的实例可能想要使用不同的 JULI 版本。例如,虽然有些人使用标准的 jul 包,但其他人可能希望使用 log4j 包。为了支持这一点,每个实例的 JULI JAR 可以放在 $CATALINA_BASE/bin 中,它会覆盖 $CATALINA_HOME/bin 中的那些。因此类路径搜索顺序为 $CATALINA_BASE/bin:$CATALINA_HOME/bin: 等。

在标准安装中 $CATALINA_BASE == $CATALINA_HOME 所以看起来 JULI JAR 已经添加了两次。

留下第二个条目是安全的,但如果您愿意,也可以安全地删除它。

于 2013-11-15T09:30:30.153 回答