我需要这样的东西:
“param name =”File“value =”$ {CATALINA_HOME} /logs/log4j.log“
我看到了很多类似的问题,但没有可行的解决方案。
答案 0 :(得分:12)
对于Tomcat 6.0或更新版本,请使用catalina.base
(而不是catalina.home
):
param name="File" value="${catalina.base}/logs/log4j.log"
根据主机系统的不同,两者可能不同,例如:
catalina.home: /usr/share/tomcat7
catalina.base: /var/lib/tomcat7
在catalina.home
下,有bin
文件夹。
在catalina.base
下,有conf
,logs
,webapps
和其他文件夹/链接。
Tomcat使用catalina.base
本身来配置日志记录目录 - 请参阅conf/logging.properties
所在的位置:
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
答案 1 :(得分:10)
param name="File" value="${catalina.home}/logs/log4j.log"
Tomcat已经提供了catalina.home
属性。
在Tomcat 5.5 logging page上找到(非常)简短的例子以及以下SO问题中的其他详细信息:
答案 2 :(得分:4)
您可以执行以下操作:
CATALINA_HOME
选项将-D
作为环境变量发送。你只需要运行 set JAVA_OPTS=%JAVA_OPTS% -DCATALINA_HOME=%CATALINA_HOME%
如果你在窗户或
对于unix,export JAVA_OPTS=${JAVA_OPTS} -DCATALINA_HOME=$CATALINA_HOME
。
现在只需在你的log4j配置文件中使用$ {CATALINA_HOME},这应该可行。