2011-01-12 45 views
0

使用Log4J的,我需要知道如何初始化和使用Log4j在java中.... 當我嘗試使用它,我得到以下錯誤正在初始化,並在Java中

的log4j:警告沒有附加目的地可以發現記錄器(主)。 log4j:WARN請正確初始化log4j系統。

+0

考慮如果您喜歡,請提出我的答案以表示「謝謝」。 – codevour 2011-01-12 12:32:00

回答

2

您可以將log4j.properties放入您的src文件夾中,這會自動檢查log4j配置。默認配置可能如下所示。

### Root Logger 
log4j.rootLogger=DEBUG, Console 

### Console Appender 
log4j.appender.Console=org.apache.log4j.ConsoleAppender 
log4j.appender.Console.layout=org.apache.log4j.PatternLayout 
log4j.appender.Console.layout.ConversionPattern=%d (%t) %-5p %c: %m%n 

否則,您可以通過編程方式調用默認配置。

import com.foo.Bar; 

// Import log4j classes. 
import org.apache.log4j.Logger; 
import org.apache.log4j.BasicConfigurator; 

public class MyApp { 

    // Define a static logger variable so that it references the 
    // Logger instance named "MyApp". 
    static Logger logger = Logger.getLogger(MyApp.class); 

    public static void main(String[] args) { 

    // Set up a simple configuration that logs on the console. 
    BasicConfigurator.configure(); 

    logger.info("Entering application."); 
    Bar bar = new Bar(); 
    bar.doIt(); 
    logger.info("Exiting application."); 
    } 
} 

取自Apache log4j的short introduction document。在請求它們減少之前,你應該尋找similiar questions

考慮切換到SLF4J這使您可以輕鬆地切換日誌記錄實現。

0

您需要在類路徑中包含log4j.properties文件。

+0

如何做到這一點? – Aravind 2011-01-12 08:53:13

1

首先,請閱讀本:http://logging.apache.org/log4j/1.2/manual.html

不久下面的屬性,當你正在運行的JVM丟失:

-Dlog4j.configuration=mylog4jconfig.xml

但是:你的問題表明你只是使用log4j的開始。請注意,它的作者CekiGülcü已經過時了,它爲java實現了新的記錄器並建議人們使用它。請參閱Logback(http://logback.qos.ch/)和SLF4J