2013-03-19 108 views
0

我正在執行JUnit測試並接收log4j:WARN當我運行測試類時,沒有找到appender用於記錄器(class ..)錯誤。單元測試環境中的Log4j

Log4j屬性文件存在於我的文件夾根目錄中。 此代碼似乎工作,但爲什麼不自動拾取log4j。

package com.folio3.automation; 
import org.apache.log4j.BasicConfigurator; 
import org.apache.log4j.Logger; 
import org.junit.Test; 
import junit.framework.Assert; 

public class TestClass { 

    static { 
     BasicConfigurator.configure(); 
    } 

    private static final Logger LOG = Logger.getLogger(TestClass.class); 

    @Test 
    public void test1(){ 
     LOG.info("test 1 called "); 
     Assert.assertEquals(true, false); 


    } 

} 

我必須調用BasicConfigurator.configure();在每個班級還是基礎班? 有什麼辦法可以實現?

+0

'CLASSPATH'看起來像log4j.properties,必須放在'CLASSPATH'上。 – hd1 2013-03-19 13:57:31

+0

log4j.properties文件位於我的應用程序根目錄下。 – 2013-03-20 05:14:39

+0

...這與您的CLASSPATH不同;您的CLASSPATH是由'CLASSPATH'環境變量或'-cp'參數在JVM設置。嘗試添加您的應用程序根目錄到你的虛擬機啓動指令,你的問題應該會消失 – hd1 2013-03-20 05:16:11

回答

1

嘗試將您的應用程序根目錄添加到您的VM啓動命令,您的問題將消失。