文章目录

  • 异常现象:
  • 解决方案:
  • 总结
异常现象:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/Program%20Files/JavaEclipse/repo/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/Program%20Files/JavaEclipse/repo/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]
Logging system failed to initialize using configuration from 'classpath:log4j.properties'
java.lang.IllegalStateException: Could not initialize Logback logging from classpath:log4j.propertiesat org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:156)at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithSpecificConfig(AbstractLoggingSystem.java:67)at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:57)at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:117)at org.springframework.boot.context.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:295)at org.springframework.boot.context.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:263)at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:226)at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:199)at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:75)at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:347)at org.springframework.boot.SpringApplication.run(SpringApplication.java:306)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)at com.example.demo.DemoApplication.main(DemoApplication.java:12)
Caused by: ch.qos.logback.core.LogbackException: Unexpected filename extension of file [file:/F:/spingboot/onepiece/target/classes/log4j.properties]. Should be either .groovy or .xmlat ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:77)at org.springframework.boot.logging.logback.LogbackLoggingSystem.configureByResourceUrl(LogbackLoggingSystem.java:183)at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:152)
解决方案:

分别在starter 和 starter-web添加 如下内容,只在start-web下添加,无法排除

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><exclusions><!-- 排除自带的logback依赖 --><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><!-- 排除自带的logback依赖 --><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions></dependency>

如果集成amqp

 <!--amqp协议--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId><exclusions><exclusion><artifactId>spring-boot-starter-logging</artifactId><groupId>org.springframework.boot</groupId></exclusion></exclusions></dependency>
总结

只要集成类似下面这种依赖,借助插件可以看一下需要排除的依赖

   <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-xxx</artifactId></dependency>

案例
需求,排除logback,但是这个依赖在哪呢?

springboot 排除 默认的loggback 和slf4j的依赖相关推荐

  1. springboot 关于 Class path contains multiple SLF4J bindings.警告的解决

    springboot 关于 Class path contains multiple SLF4J bindings.警告的解决 有一次配置好springboot项目启动后,忽然发现有下边的警告: SL ...

  2. springboot开启debug日志_Spring Boot SLF4J日志实例(五十)

    默认情况下,SLF4j日志记录包含在Spring Boot Web应用程序中,只需要启用它就可以了. 注意:查看此Spring Boot Logback XML模板以了解默认的日志记录模式和配置. S ...

  3. SpringMVC自动配置||如何修改SpringBoot的默认配置

    SpringMVC自动配置 1. Spring MVC auto-configuration Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默 ...

  4. 玩转springboot:默认静态资源和自定义静态资源实战

    点个赞,看一看,好习惯!本文 GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了3个月总结的一线大厂Java面试总结,本人已拿腾 ...

  5. springboot 设置默认访问index.html_【SpringBoot WEB系列】WebFlux静态资源配置与访问

    [SpringBoot WEB系列]WebFlux静态资源配置与访问 上一篇博文介绍SpringMVC的静态资源访问,那么在WebFlux中,静态资源的访问姿势是否一致呢 I. 默认配置 与Sprin ...

  6. SpringBoot修改默认端口号

    有时候我们可能需要启动不止一个SpringBoot,而SpringBoot默认的端口号是8080,所以这时候我们就需要修改SpringBoot的默认端口了.修改SpringBoot的默认端口有两种方式 ...

  7. springboot排除扫描包

    springboot排除扫描包 import com.reference.demo.annotation.MyEnableAnnotation; import org.springframework. ...

  8. SpringBoot排除数据源配置,配置决定行为

    项目场景: 最近接到一个需求,大概意思呢就是数据库连接不够用了,部分服务(分服务)就不需要配置数据源了,需要跟db打交道的地方全部改成rpc去调用具备db能力的服务(总服务) 问题描述: 其实需要改的 ...

  9. springboot tomcat默认线程数_记一次JAVA线程池的错误用法

    最近项目一个项目要结项了,但客户要求 TPS 能达到上千,而用我写的代码再怎么弄成只能达到 30 + 的 TPS,然后我又将代码中能缓存的都缓存了,能拆分的也都拆分了,拆分时用的线程池来实现的:其实现 ...

最新文章

  1. Android-room的学习
  2. python自动退出程序_python异常退出
  3. Tencent云联网灾备方案
  4. 通过ID在JavaScript对象数组中查找对象
  5. Mono+Nginx环境
  6. CMM (培训计划-Training Program)
  7. Redis-cluster架构
  8. Kotlin实战指南十八:open、internal 关键字使用
  9. 安装DelayExchange插件
  10. One order OPPORT_H read的学习笔记
  11. 从Java程序生成QR码图像
  12. 中国数字X射线设备行业市场供需与战略研究报告
  13. ::-webkit-scrollbar 滚动条的设置
  14. Java中string,map,json之间的常用转换方法(json转map,map转json,json转string等)
  15. LintCode 38: Search a 2D Matrix II
  16. 全球及中国级联(模块化)流水线行业研究及十四五规划分析报告
  17. 关于PV、EV、AC、CV、SV、CPI、SPI、BAC、ETC、EAC的解析及计算
  18. 分享 100 道基础的前端面试题(附答案)
  19. Excel — 动态图表(下拉框动态图)
  20. Mac解决OSError : dlopen() : Library not loaded 问题

热门文章

  1. jqgrid ajax加载数据,如何通过ajax在jqgrid中加载数据(json)?
  2. 【转载保存】IDEA maven中添加本地jar包
  3. 多次访问redis造成redis连接总是断开的解决方案
  4. xshell下利用SFTP传输文件
  5. 【开通指南】 实时计算 Flink 全托管版本
  6. 蚂蚁金服OceanBase挑战TPCC丨TPC-C基准测试之链路层优化
  7. Android Native 内存泄漏系统化解决方案
  8. 2018年,自然语言处理很全的应用与合作
  9. 当学术大家遇到技术大拿,如何攻克数据库应用头号难题?数位产学研大咖这样解读
  10. 企业如何采用机器学习