我有一个使用log4j的项目,现在我要介绍一个使用slf4j的库,我可以让slf4j根据log4j的配置进行初始化吗?所以我基本上希望log4j作为slf4j下的底层库。
更新:
log4j配置如下:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration debug="true" xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="fileAppender" class="org.apache.log4j.rolling.RollingFileAppender"> <param name="file" value="${log.dir}/${log.file}.log" /> <param name="append" value="true" /> <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> <param name="FileNamePattern" value="${archive.log.dir}/${log.file}.%d{yyyy-MM-dd}.gz" /> <param name="ActiveFileName" value="${log.dir}/${log.file}.log"/> </rollingPolicy> <layout class="org.apache.log4j.EnhancedPatternLayout"> <param name="ConversionPattern" value="%d{yyMMdd HH:mm:ss,SSS} [%t] %-5p %c %X %m%n" /> </layout> </appender> <logger name="org.hibernate"> <level value="ALL" /> <appender-ref ref="fileAppender"/> </logger> <root> <priority value="info" /> <appender-ref ref="fileAppender" /> </root> </log4j:configuration>
我还使用apache-log4j-extras版本1.0。 log4j版本是1.2.16
是的,你需要三个 jar 项目类路径中的文件:
jar
slf4j-api-1.6.1.jar // the slf4j API slf4j-log4j12-1.6.1.jar // log4j bindings for slf4j log4j-1.2.15.jar // log4j itself
确保您有相同版本的 slf4j-api 和 slf4j-log4j12 ,否则就行不通了。如果我没有弄错的话,你也可以使用最新的log4j版本,1.2.16。
slf4j-api
slf4j-log4j12