Clojure 2024调查问卷中分享你的想法!

欢迎!请查看关于页面获取更多关于这个服务的信息。

+6投票
tools.logging
已关闭

是否感兴趣将slf4j 2工厂添加到clojure的工具.logging中?

slf4j 2更改了其发现实现的方式 - 现在它使用Java ServiceLoader(标准)功能。

客户端方面,版本1.x的API与版本2.x的API兼容。
但是实现方式发生了变化 - 实现的加载方式。

https://www.slf4j.org/faq.html#changesInVersion200

我认为旧的加载方式无法找到使用服务加载器的新的slf4j 2.0实现。
https://github.com/clojure/tools.logging#selecting-a-logging-implementation (修改过)。

如果这个提议有意思,我可以提供PR。

已关闭,记录: 无需更改,更新测试依赖到2.0.6

1 答案

+1投票

我已创建https://clojure.atlassian.net/browse/TLOG-28来跟踪这个issue。如果你有兴趣提供补丁,你可以遵循成为贡献者的流程(见https://clojure.org/dev/dev#_becoming_a_contributor)。

(同时在clojurians slack上提问)

我检查了此链接,似乎所需的就是在类路径上包含新的slf4j 2.0 API。
clojure tools-logging使用了factory#(org.slf4j.LoggerFactory/getILoggerFactory)现在已迁移到使用ServiceLoader:在此访问
(我无法在jira问题上发表评论,也不了解tools-logging特定频道)。

在我看来,工具日志与slf4j 2.0兼容不应采取任何操作。
客户端只需要在类路径上有关slf4j 2.0的依赖项。
我建议在开发配置文件中使用2.0,因为1.7x系列将不再维护。
谢谢,已更新测试依赖项并关闭
...