定义目录三个方法:
一:${catalina.base}或${catalina.home}相对路径配置方法。catalina.home是你配置服务器时自动在环境变量中加的路径,默认是指向tomcat服务器的。catalina.base表示你服务器所在目录的根目录(起动服务器是服务器自定义的)。具体如下
我tomcat安装在了D盘下。
log4j.appender.FILE.File=${catalina.base}/logs/log.log表示D盘的logs文件下的log.log文件。
log4j.appender.FILE.File=${catalina.home}/logs/log.log表示你D盘里的tomcat所在目录下的logs文件下的log.log文件。
最常用的是:log4j.appender.FILE.File=${catalina.base}/logs/log.log
二:通过servlet初始化init()方法中加载file属性实现相对路径
是扩展ActionServlet类,覆盖其init()方法,新方法中载入log4j.properties位置的参数,可以自由配置log4j的配置文件的名字和存放位置。也可自由配置log4j日志文件的相对于当前应用的路径。
大至上是调用select初使化init方法,重新获取log配置文件,重设那个属性,相关资料在http://blog.csdn.net/longaohun/article/details/6233099东西太多,贴不下,希望对你有所帮助
三:还有就是更改基本属性的方法,大至意思是:log中的${catalina.base}是在启动tomcat时设定了${catalina.base}这个参数,这样的话,其实可以在读取log配置之前,可以定义一个方法,用System.setProperty(“log_url”, "E://")设定一个log_url的参数,这样你在log4j.appender.FILE.File=${log_url}/logs/log.log可以指定到你想指到的路径了