catalina.home与 catalina.base区别

时间:2024-12-19 12:35:02

转载请注明出处:

以Tomcat6.0为例,其Tomcat目 录结构如下:

bin (运行脚本) conf (配置文件) lib (核心库文件) logs (日志目录) temp (临时目录)

webapps (自动装载的应用程序的目录) work (JVM临时文件目录[java.io.tmpdir])

其中只有 bin 和 lib 目录被多个tomcat示例公用,其它目录conf、logs、temp、webapps和work 每个Tomcat实例必须拥有其自己独立的备份。

明白了上述关系就容易理解catalina.home和catalina.base的用途了:

catalina.home(安装目录):指向公用信息的位置,就是bin和lib的父目录。

catalina.base(工作目录):指向每个Tomcat目录私有信息的位置,就是conf、logs、temp、webapps和work的父目录。

应用展示:

在给项目配置日志的时候会用到:

如:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${catalina.base}/logs/all/RSSb.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>RSS_Portal.%d{yyyy-MM-dd_HH-mm}.%i.log.zip</FileNamePattern>
<maxHistory></maxHistory>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>200MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<append>true</append>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} *%-5level* [%thread] %logger Line:%-3L - %msg%n</Pattern>
<charset>utf-</charset>
</layout>
</appender>