我正在使用Clojure中实现的第三方库,该库使用clojure.tools.logging记录消息。
我想在Eclipse中禁止这些消息并尝试使用以下suggestion无效。
任何(hacky)解决方案都非常感谢。
答案 0 :(得分:1)
听起来你的clojure.tools.logging正在使用与你的应用程序其他部分不同的底层日志记录实现吗?
例如,如果您的应用程序使用的是java.util.logging,但您的类路径中有一个stray log4j库,那么clojure.tools.logging会检测到log4j,因此不会对您正在进行的日志配置更改做出反应。
检测基础日志记录实现的逻辑如下:
https://github.com/clojure/tools.logging/blob/master/src/main/clojure/clojure/tools/logging/impl.clj
具体做法是:
(defn find-factory
"Returns the first non-nil value from slf4j-factory, cl-factory,
log4j-factory, and jul-factory."
[]
(or (slf4j-factory)
(cl-factory)
(log4j-factory)
(jul-factory)
(throw ; this should never happen in 1.5+
(RuntimeException.
"Valid logging implementation could not be found."))))
运行mvn dependency:tree
或lein deps :tree
以查看类路径上的日志记录依赖项会很有帮助。