1
好吧,所以我有這個愚蠢的庫(documentum DFC),它會檢查是否Logger.getRootLogger().getAllAppenders().hasMoreElements() == false
,如果是這樣,它會將我的rootLogger級別重置爲WARN
,這會在此之後破壞我的日誌記錄。因此,爲了阻止這種情況,我試圖向根記錄器添加appender,以查看是否可以停止執行該代碼。但是,當 我打電話以編程方式添加Log4J appenders
Logger.getRootLogger().addAppender(new ConsoleAppender());
該功能仍然是錯誤的。有沒有人遇到過這個?
我使用任何log4j版本自帶jboss 6,它不會在jar文件名中說。
可能的log4j正在從兩個不同的類加載器加載的,所以你有兩個不同的根記錄器?或者,也許其他代碼添加後刪除appender? – 2011-05-20 12:45:44
@ user428916:如果你想檢查false值,不要使用== ==運算符。只要像這樣使用它'if(!Logger.getRootLogger()。getAllAppenders()。hasMoreElements())'。 – 2011-05-20 12:56:27