为什么 ConsoleAppender 会抛出“没有为名为 [null] 的追加器设置输出流或文件”?
2022-09-04 01:41:17
我在 log4j 上遇到了一个问题:ConsoleAppender
如果我像这样初始化它:
ConsoleAppender ca = new ConsoleAppender();
ca.setLayout(new PatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN));
它给出了一个错误并中断了日志记录。
错误输出:
log4j:错误 没有为名为 [null] 的追加器设置输出流或文件。
如果我像这样初始化它,它工作正常:
ConsoleAppender ca = new ConsoleAppender(new PatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN));
有没有人遇到过这个问题?我无法在Bugzilla存储库中找到它,但是如果它有效地成为一个问题,那将是非常明显的!
也许我找错地方了?
相关代码:
import org.apache.log4j.*;
public class ConsoleAppenderIssue {
private static Logger logger = Logger.getLogger(ConsoleAppenderIssue.class);
public static void main(String [] args) {
ConsoleAppender ca = new ConsoleAppender();
ca.setLayout(new PatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN));
logger.addAppender(ca);
logger.info("log something");
}
}