log4j.properties怎么写( 四 )

<!-- 配置Log4j --> log4jInit org.eredlab.g4.rif.util.Log4jInitServlet log4jLocation WEB-INF/classes/log4j.properties 0 3、此时在log4j.properties中就可以使用相对路径了,如下:#Rlogfile log4j.appender.Rlogfile=org.apache.log4j.RollingFileAppender log4j.appender.Rlogfile.layout=org.apache.log4j.PatternLayout log4j.appender.Rlogfile.layout.ConversionPattern=%d %p [%c] - <%m>%n log4j.appender.Rlogfile.File=${webRoot}/logs/eRedG4.log log4j.appender.Rlogfile.MaxFileSize=2048KB log4j.appender.Rlogfile.MaxBackupIndex=10 批注:写完才发现,其实这种方式用的也是绝对路径,只不过是用动态获取绝对路径的方法来达到类似相对路径的效果了 。
8. log4j2.xml怎么调用properties 自动加载配置文件:
(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解 。log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件 。然后加载配置 。配置文件放置位置正确,不用在程序中手动加载log4j配置文件 。如果将配置文件放到了config文件夹下,在build Path中设置下就好了 。
若要手动加载配置文件如下:
(1)PropertyConfigurator.configure("log4j.properties") 默认读取的是项目根目录的路径 。此时的log4j.properties要放在项目目录下 。
如图,log4j.properties和src是同级目录,同在根目录下
(2)一般,一个java项目会有很多的配置文件,建议把所有的配置文件放到一个文件夹下,
例如,放到config文件夹 。那么在读取这些配置文件的时候要加上子目录名称 。
如图在项目目录下创建config文件夹(注意:不是在src文件下),此时,config和src是同级目录
这时,读取路径改为:
PropertyConfigurator.configure("config/log4j.properties");
(3):如果不手动设置,不用人为的写加载log.properties文件的代码时,直接放src目录下,千万要记得,如果新建一个JAVA项目,src文件要弄成原文件包才行
我就是用的这个
(4)项目打成jar包时,一般不会把配置文件也打进jar包 。
如果是第一种方式,直接将log4j.properties文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件 。
如果是第二种方式,要建立config文件夹,把配置文件放入其中,再将config文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件 。
9. log4j.properties 放在哪 我原来通常都是把 log4j.properties放在WEB-INF目录下, web.xml相应的定义为: log4jConfigLocation /WEB-INF/log4j.properties org.springframework.web.util.Log4jConfigListener 这个设置对于该web app没有任何问题 。
但是如果你要进行JUnit Test,在运行TestCase时,就会发生错误:log4j:WARN No appenders could be found for logger log4j:WARN Please initialize the log4j system properly.那是因为在classpath里找不到log4j.properties,因此我把log4j.properties改放在WEB-INF/classes目录下,web.xml相应的定义改为: log4jConfigLocation /WEB-INF/classes/log4j.properties 这样运行Junit时也会正常 。

log4j.properties怎么写

文章插图