为什么我不使用时会收到 SLF4J 错误?
Why am I getting a SLF4J Error when I'm not using it?
我在 Eclipse 中有一个小的单一 class Java 项目,它不使用任何形式的日志记录。我在同一工作区中打开了另一个使用 SLF4J 的项目。
当我 运行 我的程序时,它输出到 STDOUT 并从 STDIN 获取扫描仪输入,但在程序成功完成后,我将其打印到 STDERR:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
如果我的项目中没有包含 SLF4J(它也不是 Maven 依赖项),为什么会显示此错误?
您对使用 slf4j 日志记录的类路径具有依赖性或传递性依赖性 api。 Slf4j 以这样一种方式设置,即在加载时它希望您也提供一个实现。
在最简单的设置中,您可以将 slf4j-simple 添加为项目的依赖项以提供预期的实现。它将所有消息记录到控制台。如果您选择不添加实现,那么您将看不到该库的任何日志。
如果这是个人项目,除非您需要调试问题,否则它可能并不重要。
如果这是一个现有的生产项目,您可以根据具体情况做几件事。
我在 Eclipse 中有一个小的单一 class Java 项目,它不使用任何形式的日志记录。我在同一工作区中打开了另一个使用 SLF4J 的项目。
当我 运行 我的程序时,它输出到 STDOUT 并从 STDIN 获取扫描仪输入,但在程序成功完成后,我将其打印到 STDERR:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
如果我的项目中没有包含 SLF4J(它也不是 Maven 依赖项),为什么会显示此错误?
您对使用 slf4j 日志记录的类路径具有依赖性或传递性依赖性 api。 Slf4j 以这样一种方式设置,即在加载时它希望您也提供一个实现。
在最简单的设置中,您可以将 slf4j-simple 添加为项目的依赖项以提供预期的实现。它将所有消息记录到控制台。如果您选择不添加实现,那么您将看不到该库的任何日志。
如果这是个人项目,除非您需要调试问题,否则它可能并不重要。
如果这是一个现有的生产项目,您可以根据具体情况做几件事。