2012-02-28 470 views
5

在一个项目中的类路径上我有以下几点:Logback FileAppender - 日志文件为空?

Bundle-ClassPath: ., 
lib/logback-classic.jar, 
lib/logback-core.jar, 
lib/slf4j-api.jar 

,并在build.properties如下:

bin.includes = META-INF/,\ 
       .,\ 
       plugin.xml,\ 
       lib/logback-classic.jar,\ 
       lib/logback-core.jar,\ 
       lib/slf4j-api.jar,\ 
       logback.xml 

在根我也有含logback.xml文件:

<!-- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> --> 
<!--  <layout class="ch.qos.logback.classic.PatternLayout"> --> 
<!--  <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n --> 
<!--  </Pattern> --> 
<!--  </layout> --> 
<!-- </appender> --> 
    <root level="debug"> 
    <appender-ref ref="STDOUT" /> 
    </root> 
    <appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
    <File>logs\\logfile.log</File> 
    <Append>true</Append> 
    <layout class="ch.qos.logback.classic.PatternLayout"> 
     <Pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n 
     </Pattern> 
    </layout> 
    </appender> 
</configuration> 

在此被以执行一类启动我:

private static final Logger logger = LoggerFactory.getLogger(Application.class.getName()); 
    public Object start(IApplicationContext context) { 
    logger.debug("debug string"); 
    logger.warn("warn string"); 
    logger.error("error string"); 

当我构建和运行我的应用程序的文件日志\ LOGFILE.LOG在我的应用程序,但其空的根目录中创建。如果我使用ConsoleAppender并启用控制台,它工作正常。

为什么在使用FileAppender时logback不会写入日志文件?

回答

7

您是否尝试过与添加文件附加目的地,裁判根logback.xml如下图所示:

<root level="debug"> 
    <appender-ref ref="STDOUT" /> 
    <appender-ref ref="FILE" /> 
</root> 
+0

精湛的回答感谢吉里什! – sunleo 2017-03-30 06:18:53

相关问题