2012-11-14 48 views
0

我已經設置了一個Ant腳本來運行Cobertura的單元測試。出於某種原因,我得到了Cobertura的log4j DEBUG輸出。我一直在盯着這幾個小時,用我能想出的所有診斷函數,我不明白爲什麼會發生這種情況。診斷爲什麼我的Ant的Cobertura輸出處於調試模式

我使用SysInternals ProcessMonitor檢查是否手動加載「log4j.properties」或「log4j.xml」。沒有找到。

我讓Ant打開詳細的類加載,我從來沒有看到它加載「log4j.properties」或「log4j.xml」。這告訴我這不是傳遞給派生的進程,因爲我知道「cobertura.jar」具有「log4j.properties」,它具有以下內容:

# set default logging level and appender 
log4j.rootCategory=WARN, console 
#log4j.category.net.sourceforge.cobertura=WARN, console 

#log4j.category.net.sourceforge.cobertura.check=DEBUG, console 
#log4j.category.net.sourceforge.cobertura.coverage=DEBUG, file 
#log4j.category.net.sourceforge.cobertura.coverage.CoverageDataFactory=INFO, file 
#log4j.category.net.sourceforge.cobertura.coverage.SaveInstrumentationTimer=DEBUG, file 
#log4j.category.net.sourceforge.cobertura.merge=DEGUG, console 
#log4j.category.net.sourceforge.cobertura.reporting=DEBUG, file 

log4j.appender.console=org.apache.log4j.ConsoleAppender 
log4j.appender.console.layout=org.apache.log4j.PatternLayout 
log4j.appender.console.layout.ConversionPattern=%-6p %M, %m%n 

log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=cobertura.log 
log4j.appender.file.MaxFileSize=3000KB 
log4j.appender.file.MaxBackupIndex=3 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d %-2p [%t] %c{3} - %m - (%F:%L) %n 

在這裏唯一的不相關的問題是拼寫錯誤的「DEGUG」,但被註釋掉了。

我看不出這是怎麼回事。我一直在問一位Cobertura維護人員,他不明白爲什麼會發生這種情況。

回答

0

我想通了。我忘記了非常方便的「log4j.debug」屬性,它在啓用時會告訴你它在哪裏找到了「log4j.xml」或「log4j.properties」文件。我在一個意外的jar文件中找到了前者,現在我已經修補了它(它將默認級別設置爲DEBUG),現在我沒有默認獲取調試輸出。

相關問題