在重新发明轮子之前 - 我希望能够在代码中插入调试跟踪,例如 say("We are here.");
,而不定义 static void say ()
在每个类中。它需要执行System.out.println(s)
,并全局打开或关闭(doSay(false)
),我也希望它能够能够识别调用它的类( as described here )。例如:
MyClass: We are here.
Java已经有这样的工具了吗?
最佳答案
使用SLF4j,不是 log4j(至少不是直接)。它们都是由 same author, 创建的Ceki Gülcü,但 SLF4J 结合了通过查看 log4j 的使用以及查看其他日志记录包的进展而获得的知识。
SLF4J 是许多不同底层日志系统的通用 API,例如 log4j、java.util.logging 包等。它还有自己的“ native ”实现 logback。
我比 log4j 更喜欢它的一个原因是它对消息模板的支持。这些keep your code simpler.
此外,它允许我在库中包含日志记录,但让我的库的用户选择日志记录实现。如果没有这样的东西,用户可能必须仅为我的库配置日志记录,并且它不会与他的应用程序的其余部分统一。
关于java - 用Java编写一个简单的打印方法用于调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6949262/