IntelliJ IDEA中程序包org.slf4j找不到的解决

 更新时间:2023年11月13日 10:56:44   作者:烈火雨季  
这篇文章主要介绍了IntelliJ IDEA中程序包org.slf4j找不到的解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

IDEA中程序包org.slf4j找不到

最近导入公司项目的时候遇到个莫名其妙的问题,提示程序包org.slf4j找不到。查了下maven,slf4j和log4j都已经导入了。

捣鼓了老半天终于发现问题了:

记得把slf4j-log4j的包也一起导入进去

idea里面用svn直接import进来的项目竟然还会遇到依赖包的问题我也是挺无语的……

IDEA调试@Slf4j log.info无法打印日志,报错failed to load class “org.slf4j.imp.StaticLoggerBinder“及解决亲测可行

1. 报错 failed to load class “org.slf4j.imp.StaticLoggerBinder”

在这里插入图片描述

2. 解决 仅提供唯一一个包(slf4j-nop.jar、slf4j-reload4j.jar、slf4j-api.jar、slf4j-jdk14.jar或logback-classic.jar等)在类路径

来自 www.slf4j.org 官网的解析:

当在类路径上找不到SLF4J提供程序时,会报告此警告,即不是错误消息。将slf4j-nop.jar、slf4j-reload4j.jar、slf4j-jdk14.jar或logback-classic.jar等众多可用提供程序中的一个(也是唯一一个)放在类路径上应该可以解决问题。

在没有提供程序的情况下,SLF4J将默认为无操作(NOP)记录器提供程序。

请注意,slf4j-api 2.0.x及更高版本使用ServiceLoader机制。早期的版本依赖于静态绑定机制,而slf4j-api不再采用这种机制。请阅读常见问题解答条目SLF4J 2.0.0版本有什么变化?了解更多重要细节。

如果您负责打包应用程序而不关心日志记录,那么将slf4j-nop.jar放在应用程序的类路径上将消除此警告消息。请注意,库或框架等嵌入式组件不应声明对任何SLF4J提供程序的依赖,而应仅依赖于SLF4J-api。当库声明编译时依赖于SLF4J提供程序时,它会将该提供程序强加给最终用户,从而否定SLF4J的目的。

类路径包含SLF4J绑定,目标为SLF4J-api版本1.7.x或更早版本为Jigsaw(Java 9)、slf4j-api 2.0.x版及更高版本的出现做计划时,请使用ServiceLoader机制。SLF4J的早期版本依赖于静态绑定机制,而SLF4J-api 2.0.x版本不再采用该机制。

如果SLF4J没有找到以SLF4J 2.0.x为目标的提供程序,而是找到了以SLF4J.1.7或更早版本为目标的绑定,它将列出它找到的绑定,但在其他情况下将忽略它们。

这可以通过在类路径上放置一个SLF4J提供程序来解决,这些提供程序包括logback版本1.3.x及更高版本,以及SLF4J-reload4j、SLF4J-jdk14、SLF4J simple版本2.0.0或更高版本中的一个。

在这里插入图片描述

3. 在右侧查看自己引入的包,然后exclusions排除对应的包

在这里插入图片描述

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决IntellIJ IDEA提示内存不足的图文教程

    解决IntellIJ IDEA提示内存不足的图文教程

    现在越来越多的人投入了 IntellIJ Idea 的怀抱, 它给我们的日常开发带来了诸多便利,但是我们在开发过程中,总是能碰到idea内存不足问题,所以本文给大家介绍了解决IntellIJ IDEA提示内存不足的图文教程,需要的朋友可以参考下
    2025-03-03
  • SpringBoot深入浅出分析初始化器

    SpringBoot深入浅出分析初始化器

    这篇文章主要介绍了SpringBoot初始化器的分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Java的"伪泛型"变"真泛型"后对性能的影响

    Java的"伪泛型"变"真泛型"后对性能的影响

    泛型擦除本质上就是擦除与泛型相关的一切信息,例如参数化类型、类型变量等,Javac还将在需要时进行类型检查及强制类型转换,甚至在必要时会合成桥方法,这篇文章主要介绍了Java的"伪泛型"变"真泛型"后对性能的影响,需要的朋友可以参考下
    2025-05-05
  • 使用spring boot 整合kafka,延迟启动消费者

    使用spring boot 整合kafka,延迟启动消费者

    这篇文章主要介绍了使用spring boot 整合kafka,延迟启动消费者的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 详解Spring如何使用@Scheduled注解执行定时任务

    详解Spring如何使用@Scheduled注解执行定时任务

    在现代的Java应用程序中,定时任务是一种常见的需求,Spring框架提供了多种方式来管理定时任务,其中​​@Scheduled​​注解因其简洁和易用性而受到开发者的青睐,下面我们就来看看具体实现方法吧
    2025-08-08
  • java编程下字符串的16位,32位md5加密实现方法

    java编程下字符串的16位,32位md5加密实现方法

    下面小编就为大家带来一篇java编程下字符串的16位,32位md5加密实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 深入理解springMVC中的Model和Session属性

    深入理解springMVC中的Model和Session属性

    这篇文章主要介绍了深入理解springMVC中的Model和Session属性,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 用Java将字符串的首字母转换大小写

    用Java将字符串的首字母转换大小写

    在项目开发的时候会需要统一字符串的格式,比如首字母要求统一大写或小写,那用Java如何实现这一功能?下面一起来学习学习。
    2016-08-08
  • 给@Value设置默认值以及为static变量赋值问题

    给@Value设置默认值以及为static变量赋值问题

    在Spring框架中,@Value注解用于属性注入,可将配置文件中的值赋给变量,未指定默认值时,若配置文件缺少相应属性,程序启动会报错,可通过设定默认值防止此问题,对于静态变量,由于@Value无法直接注入,需通过Set方法赋值,该方法也支持默认值设置
    2024-09-09
  • 浅谈SpringBoot如何正确拦截thymeleaf异常

    浅谈SpringBoot如何正确拦截thymeleaf异常

    Thymeleaf是一个模板引擎工具,主要用于页面渲染操作,本文主要介绍了浅谈SpringBoot如何正确拦截thymeleaf异常,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09

最新评论