2012-12-29 14 views
8

Jestem w trakcie przełączania z Log4j na Logback, ale nie mam jeszcze sukcesu w tworzeniu Logback. Umieściłem logback.xml w katalogu głównym mojego projektu Eclipse Java i poniżej jego treść:Konfigurowanie logback w Eclipse

<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> 

A poniżej jest odpowiednia zawartość mojego 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"); 
    } 
} 

To nie wydają się działać ponieważ nie utworzono pliku o nazwie myApp.log w katalogu głównym mojej aplikacji Java Eclipse. Masz pojęcie, co robię źle?

Odpowiedz

8

Plik konfiguracyjny musi znajdować się w ścieżce klas. Domyślam się, że tak nie jest. Sprawdź ścieżkę budowania dla projektu.

+0

zadziałało. dzięki – Arya

+2

Dla maven pomaga przenieść plik do ** src/main/resources ** po tym [porady] (http://logback.10977.n7.nabble.com/Project-Can-t-Find-logback-xml -file-td3442.html) – lony

+0

Ponadto, przez "w ścieżce klas", oznacza to, że * katalog * (ścieżka) do pliku znajduje się w ścieżce classpath. Np .: 'CLASSPATH ="/foo:/goo:/foo/bar "' znajdzie plik '/ foo/bar/logback.xml' na ścieżce klas. –