几天前,每次我在 Eclipse IDE (v2022-12) 中启动 Maven 构建时,都会出现以下消息:
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
SLF4J: Class path contains SLF4J bindings targeting slf4j-api versions 1.7.x or earlier.
SLF4J: Ignoring binding found at [jar:file:/C:/Users/<username>/.p2/pool/plugins/org.eclipse.m2e.maven.runtime_3.8.604.20221130-2149/jars/maven-slf4j-provider-3.8.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See https://www.slf4j.org/codes.html#ignoredBindings for an explanation.
到目前为止我尝试过的每个项目(所有 Java/Spring)都会出现该错误。构建正在后台执行,但不会生成控制台输出。当通过控制台启动时,输出看起来像预期的那样;所以显然只有 Eclipse 的集成 Maven 设置受到影响。
我不知道更改了 Eclipse 或 Classpath 的配置。
到目前为止我发现的所有提示都集中在修复特定(Maven)项目的 SLF4J 配置,通常是通过修改 POM 中的依赖关系。
如何解决 Eclipse 的问题,最好通过更新而不是降级 SLF4J?
(目前无法选择更新 Eclipse,因为我仍然使用一些遗留组件。)
以下解决方案基于更新 Maven (M2E) 的 Eclipse IDE 集成,对我有用(感谢 @howlger 的支持!):
Help
-> Install new Software...
Maven Embedded Runtimes
(也可能选择 M2E - Complete Development Kit
)