我发现<code>加载类“org.slf4j.impl.StaticLoggerBinder”失败
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 jar或依赖项添加到您的项目中
手册中没有明确的例子说明如何将log4j和sl4j一起使用。但是有很多非官方的,我喜欢这个:http://www.javavillage.in/slf4j-with-log4j.php
请注意,只有两个专家。没有明确的log4j dep,它是自动加载的。
另外(它花了我1小时14分钟)sl4j的某些版本不稳定,这很重要。版本1.8测试版(是的,测试版)不起作用。所以我使用了1.7.13,它的工作原理。
所以,检查maven deps,应该是这样的:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.13</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.13</version>
</dependency>
默认配置位置是资源文件夹。例如,对于主要来源:
project/src/main/resources
或用于测试:
project/src
干杯!
首先。关于依赖关系。
为了添加SLF4J,您必须在pom.xml中放入且只能放入其中一个依赖项。这取决于您选择使用什么实现。您在pom.xml中添加的每个依赖项都会自动添加到类路径中。如果下面的一个依赖关系是由另一个依赖关系提供的,那么您可以忽略它。不要忘记,即使依赖项是由另一个依赖项提供的,也必须只包含一个。请注意,我已经从依赖项中省略了版本。使用最新的版本。
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version></version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
现在,关于您在构建maven项目时遇到的恼人错误。如果在只有一个以上的依赖项之后,您仍然得到SLF4J:无法加载类“org . slf4j . impl . staticloggerbinder”。那么你面对的是m2e的bug。
Eclipse Juno和Indigo在使用捆绑的maven版本(m2e)时,没有抑制消息SLF4J:未能加载类“org.SLF4J.impl.StaticLoggerBinder”。m2e版本1.1.0.20120530-0009及以后版本中存在此行为。
虽然,这被指示为错误,您的日志将正常保存。突出显示的错误仍将存在,直到修复此错误。有关此内容的更多信息,请参阅 m2e 支持站点。
当前可用的解决方案是使用外部maven版本,而不是Eclipse的捆绑版本。您可以在下面的问题中找到有关此解决方案和有关此错误的更多详细信息,我认为它描述了您面临的相同问题。
SLF4J:加载类“org.SLF4J.impl.StaticLoggerBinder”失败。错误
我对SLF4J有依赖性。我得到这个错误: 这是我的maven条目: 问题出在哪里? 编辑:没有log4j依赖项,我得到以下异常 编辑2:这是我得到的一个例子
我得到错误。我想将记录器写入文件。所以我使用log4j.jar并使用apache tomcat服务器。
我想使用Eclipse Indigo运行maven项目,但当我运行项目Run As- 我对此进行了研究,后来意识到slf4j依赖也缺失了。我下载了slf4j-1.7.5.zip并将以下文件提取到C:\Program files\Java\jdk1.7.0\u 17\lib中: slf4j-simple-1.7.5.jarslf4j-api-1.7.5.jarlog4j-over-slf4j-1.7
关于Eclipse IDE(Indigo、Juno和Kepler(32和64位版本)) 平台:Windows、Ubuntu、Mac M2E版本:1.1.0.20120530-0009,1.2.0.20120903-1050,1.3.0.20130129-0926, 1.4.0.20130601-0317 上面的错误是在将m2e更新到1.1版之后出现的。通过删除M2E1.1并回滚到M2E1.0,一切
问题内容: 我对SLF4J有依赖性。我收到此错误: 这是我的Maven条目: 问题出在哪里? 编辑: 没有log4j依赖性我得到以下异常 EDIT2 :这是我得到的示例树 问题答案: 我假设您正在使用Eclipse作为开发环境。 使用捆绑的Maven版本(m2e)时,Eclipse Juno,Indigo和Kepler不会抑制消息SLF4J:无法加载类“ org.slf4j.impl.Static
在官方网站上,我找到了这个问题的以下修复: 因此,我在“C:\Program Files\java\jdk1.7.0_07\lib”中复制了slf4j-simple.jar。但我还是犯了错误。 请指导我什么是正确的解法。我是Java新手。 项目中有以下的依赖项。 我已经更新了我的项目。此外,和出现在我的项目中的“Maven Dependencies”中。也存在于中