在Eclipse中配置Logback

11

我正在从Log4j切换到Logback的过程中,但尚未成功使Logback工作。 我已将 logback.xml 放置在Eclipse Java项目的根目录中,以下是其内容:

<configuration>

  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>myApp.log</file>

    <encoder>
      <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
    </encoder>
  </appender>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%msg%n</pattern>
    </encoder>
  </appender>

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

以下是我Main.java的相关内容:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Main
{
  static final Logger logger = LoggerFactory.getLogger(Main.class);

  public static void main(String[] args)
  {
    logger.info("Main started");
  }
}

看起来这个方法不起作用,因为在我的Eclipse Java应用程序的根目录中没有创建名为myApp.log的文件。你知道我做错了什么吗?

1个回答

9
配置文件需要在类路径上。我猜测它不在那里。检查项目的构建路径。

5
对于Maven,按照此建议将文件移动到src/main/resources目录下可解决问题(参考链接:http://logback.10977.n7.nabble.com/Project-Can-t-Find-logback-xml-file-td3442.html)。 - lony
此外,“在类路径上”意味着该文件所在的目录(路径)在类路径上。例如:CLASSPATH="/foo:/goo:/foo/bar"将在类路径上查找文件/foo/bar/logback.xml - Ogre Psalm33

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接