我使用的第 3 方 jar 使用 log4j 和垃圾邮件真的太多了(使 eclipse 崩溃),有没有一种方法可以删除所有日志记录,就好像 log4j 从一开始就不存在一样?以编程方式或通过项目设置,只要它是好的,一切都可以。
我试过了
List<Logger> loggers = Collections.<Logger>list(LogManager.getCurrentLoggers());
loggers.add(LogManager.getRootLogger());
for ( Logger logger : loggers ) {
logger.setLevel(Level.OFF);
}
但在我的设置中无法编译:
LogManager.getCurrentLoggers() and
LogManager.getRootLogger() do not exist.
最佳答案
Log4j2 使用多个上下文。调整上面的代码:
LoggerContext ctx = (LoggerContext) LogManager.getContext();
Configuration config = ctx.getConfiguration();
Collection<LoggerConfig> loggers = config.getLoggers().values();
for(LoggerConfig cfg: loggers) {
cfg.setLevel(Level.OFF);
}
关于java - 永久关闭 log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41789428/