gpt4 book ai didi

java - 使用 SLF4J 桥接 JUL 不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 14:25:20 27 4
gpt4 key购买 nike

我目前观察到第 3 方库(即 javax.mail )正在使用 java.util.logging。javaMail的版本是1.4.7。我想使用 SLF4J LoggingFramwork 将 JUL 桥接到 logback。slf4j api 版本是:logback-core|1.0.13
slf4j-api|1.7.5
七月至 slf4j|1.7.5

在主函数中,我还通过调用以编程方式安装 SLF4JBridgeHandler:

 // Optionally remove existing handlers attached to j.u.l root logger
SLF4JBridgeHandler.removeHandlersForRootLogger();

// add SLF4JBridgeHandler to j.u.l's root logger, should be done once during
// the initialization phase of your application
SLF4JBridgeHandler.install();

但它不起作用,javaMail 还在我的控制台中记录调试信息。我的 logbak.xml 是

  <root level="INFO">
<appender-ref ref="STDOUT" />
</root>

有什么问题吗?

最佳答案

session调试开启JavaMail可以直接写入System.out。这可能是您看到控制台输出的原因。尝试转动它off :

    Session s = Session.getInstance(props);
s.setDebug(false);

否则您可以更改 logger level对于 JavaMail 记录器。

java.util.logging.Logger.getLogger("javax.mail").setLevel(Level.WARNING);

根 JavaMail 记录器名称是“javax.mail”。请参阅java.util.logging: how to set level by logger package (or prefix)?了解更改记录器级别的其他方法。

JavaMail 1.3 FCS RELEASE 是第一个支持通过输出流进行调试的版本。通过default System.out 作为默认调试流返回。 JavaMail 1.4.6是第一个适合使用 java.util.logging 的版本。旧应用程序仍支持以前的行为。

关于java - 使用 SLF4J 桥接 JUL 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26738479/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com