- 关于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 版后出现上述错误。通过删除 m2e 1.1 并回滚到 m2e 1.0 一切正常。我试图在 Windows 和 Ubuntu 中重复这个问题,它给了我完全相同的错误。对 slf4j-api 和 logback 的许多配置进行了测试,但似乎没有一个有效。
即使没有声明 slf4j 依赖项,该错误也会出现在任何 maven 项目中。
新建 Maven 项目--> maven-archetype-quickstart
和
新建 Maven 项目--> 没有原型选择的简单项目
结果到
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
测试环境和配置
在 Mac 上使用 Eclipse Indigo 和 Eclipse Juno(32 位和 64 位)进行测试,在 Ubuntu 上使用 32 位,在 Windows 上使用 64 和 32 位进行测试。测试了Juno Classic、Juno Modeling tools、Kepler Standard、Kepler Modeling Tools的全新安装并产生了相同的错误。
错误出现在clean、install、test、deploy、generate-sources、validate、compile、package、integration-test、verify以及目标 clean 与其余目标的组合中。它也与参数-e和-X一起出现。曾尝试删除 m2e 存储库并从头开始下载,但再次失败。我应该提到它在 3 台不同的机器和所有上述系统的虚拟机中进行了测试,但它产生了相同的错误。
尝试了解决slf4j-api和logback-core依赖项的所有不同logback配置(从 1.0.4 到 1.0.13),但都产生相同的错误:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version></version>
</dependency>
尝试了所有不同的(从 1.6.1 到 1.7.5 )slf4j-simple配置。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
尝试了所有不同的(从 1.6.1 到 1.7.5 )log4j-over-slf4j配置。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
尝试了所有不同的(从 1.6.1 到 1.7.5 )slf4j-jdk14配置。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
尝试了所有不同的(从 1.6.1 到 1.7.5 )slf4j-log4j12配置。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version></version>
<scope>compile</scope>
</dependency>
尝试了slf4j-nop 1.7.5配置。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.5</version>
<scope>compile</scope>
</dependency>
最后但并非最不重要的一点是,尽管出现错误,但仍会保存和打印日志。
重现错误的方法
下载 Eclipse Juno、Indigo 或 Kepler 32 或 64 位(所有安装都会导致相同的错误)。
安装 m2e - Eclipse 的 Maven 集成
- 朱诺 - http://download.eclipse.org/releases/juno
- 开普勒 - http://download.eclipse.org/releases/kepler
- Indigo - http://download.eclipse.org/technology/m2e/releases/(目前不可用)
或者
将您的 m2e 版本更新为1.1.0.20120530-0009或1.2.0.20120903-1050或1.3.0.20130129-0926或1.4.0.20130601-0317)
选择File->New->Other->Maven Project->点击Next->
从目录中选择maven-archetype-quickstart->Finish或者
选择File->New->Other->Maven Project->点击Next->选择Create a simple project (skip archetype selection)-> Complete Artifact info->Finish
- 右键单击项目->运行方式->全新安装(或上面提到的任何其他目标)
控制台上的第一行将是
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.
PS现有项目将m2e版本更新为1.1.0.20120530-0009、1.2.0.20120903-1050、1.3.0.20130129-0926、1.4.0.20130601-0317后会产生同样的错误
更新
编辑
m2e 支持网站:
上述问题作为一个错误发布在 m2e 支持网站上,而 Igor Fedorenko 的回答是
没有立即计划压制此消息。
查看以上bug请参考m2e官方支持网站
编辑 2
- m2e版本1.2.0.20120903-1050也存在上述错误指示
编辑 3
- 上述错误指示也存在于m2e版本1.3.0.20130129-0926
编辑 4
- 上述错误指示也存在于m2e版本1.4.0.20130601-0317
编辑 5
***Reported FIXED***
- 对于m2e版本1.5.0/Luna M3 ( Target Milestone ),上述错误报告为已修复。该版本尚未可供下载。
- Luna M3定于 11 月 15 日。
- 最新的开发版本可在此处获得
- 您可以在m2e 主存储库中找到有关 m2e 里程碑的更多信息。