`
kanpiaoxue
  • 浏览: 1777395 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

springboot的logback和spring-data-hbase的log4j冲突解决方法

 
阅读更多

springboot默认的日志框架是logback,它的性能较好,功能强大。选择使用它的时候是默认支持的。但是在springboot里面引入spring-data-hbase(org.springframework.data.hadoop.hbase.HbaseTemplate)的时候,会引入mavendpom.xml的依赖。在hadoop、hbase的依赖里面会引入log4j。springboot在启动的时候感知到classpath里面有Log4j和logback,就会报错。

该如何处理呢?

方案:排除掉log4j的依赖,不能排除的将它转换为 slf4j

参考资料: https://stackoverflow.com/questions/34863719/spring-boot-use-logback-instead-of-log4j

 

there are these three logging frameworks:

  • log4j (ancient)
  • slf4j (api used everywhere, there are different backends available)
  • logback (has nice features and configuration, successor of slf4j)

you have to manually throw out log4j and replace it with the compatibility bridge log4j-over-slf4j.

there is a slf4j backend called logback-classic.

<dependency>
    <!-- legacy log4j ==> slf4j *** 这里是关键 ***-->
    <groupId>org.slf4j</groupId>
    <artifactId>log4j-over-slf4j</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <!-- slf4j ==> logback 这里也可以不明确的引入logback,因为springboot默认提供 -->
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.1.7</version>
</dependency>
<dependency>
    <groupId>...no maintainer...</groupId>
    <artifactId>...old stuff...</artifactId>
    <version>...ancient...</version>
    <exclusions>
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
    </exclusions>
</dependency>

 

 

 

分享到:
评论

相关推荐

    logback-ext-spring-0.1.1

    logback与spring集成的文件...https://github.com/qos-ch/logback-extensions/tree/master/spring/src/main/java/ch/qos/logback/ext/spring/web 你也可以自己用maven去下载。 注意:此jar包支持spring3.1.1之后的版本

    log4j-1.2.17.jar、logback-core-1.1.2.jar、slf4j-simple-1.7.12.jar等

    commons-logging-1.2.jar、log4j-1.2.17.jar、logback-classic-1.1.2.jar、logback-core-1.1.2.jar、slf4j-api-1.7.12.jar、slf4j-jcl-1.7.12.jar、slf4j-simple-1.7.12.jar

    SpringBoot之logback-spring.xml不生效的解决方法

    当使用logback作为日志框架时,通常我们会将配置文件放在`src/main/resources`目录下,命名为`logback-spring.xml`,这是因为Spring Boot默认支持`logback-spring.xml`,它能与Spring的自动配置机制集成。...

    10 reasons to use logback !------log4j他爹告诉你为何要使用新的日志包logback

    通过上述讨论,我们可以看到logback作为一个现代日志框架,不仅在性能、灵活性和可扩展性上优于log4j,而且在日志管理和安全性方面也提供了更多的解决方案。因此,对于Java开发者来说,选择logback作为日志工具是...

    logback-classic-1.2.3-API文档-中英对照版.zip

    赠送jar包:logback-classic-1.2.3.jar; 赠送原API文档:logback-classic-1.2.3-javadoc.jar; 赠送源代码:logback-classic-1.2.3-sources.jar; 包含翻译后的API文档:logback-classic-1.2.3-javadoc-API文档-...

    SpringBoot Logback配置,SpringBoot日志配置

    Spring Boot推荐使用`logback-spring.xml`而不是传统的`logback.xml`,因为`logback-spring.xml`会由Spring Boot的自动配置机制处理,可以更好地与Spring的其他特性集成。 **配置基本结构** 一个基础的`logback-...

    SpringBoot框架配置log4j和log4j2的配置代码

    本文将详细介绍如何在SpringBoot项目中配置Log4j和Log4j2。 ### SpringBoot与Log4j Log4j是Apache的一个开源项目,用于生成日志。它的核心功能包括定义日志级别(如DEBUG、INFO、WARN、ERROR),配置日志输出目的...

    logback-ext-spring.jar

    本文将详细介绍如何在Spring框架中使用Logback来替代Log4j,并提供编译后的`logback-ext-spring-0.1.2-SNAPSHOT.jar`包供参考。 1. **Logback简介** Logback是由Ceki Gülcü(Log4j的创始人)创建的日志框架,...

    logback-classic-1.2.3.jar

    logback-classic-1.2.3.jar

    logback-classic-1.2.11.jar

    logback-classic-1.2.11.jar

    logback-access-spring-boot-starter:用于Logback访问的Spring Boot Starter

    logback-access-spring-boot-starter 用于 Starter。 注意:此页面用于Spring 。如果使用Spring Boot 1,请参阅。 注意:此工件名称在已更改。 旧名称是“ spring-boot-ext-logback-access”。产品特点自动检测您的...

    logback-core-1.2.11.jar

    logback-core-1.2.11.jar

    logback-cfca-jdk1.6-3.1.0.0.jar

    logback-cfca-jdk1.6-3.1.0.0.jar

    logback-classic-1.2.10-API文档-中文版.zip

    赠送jar包:logback-classic-1.2.10.jar; 赠送原API文档:logback-classic-1.2.10-javadoc.jar; 赠送源代码:logback-classic-1.2.10-sources.jar; 赠送Maven依赖信息文件:logback-classic-1.2.10.pom; 包含...

    logback-classic-1.1.2.jar

    logback-classic-1.1.2.jar 资源共享,有需要其他jar包的可以在评论留言,看到后我会陆续上传。

    SpringBoot中自定义日志配置logback-spring.xml示例源码

    默认情况下,Spring Boot使用Logback作为其日志系统,因为Logback在性能上优于Log4j,并且与Spring框架有良好的集成。本教程将详细介绍如何在Spring Boot中自定义日志配置,特别是通过`logback-spring.xml`文件来...

    logback-core-1.2.3-API文档-中英对照版.zip

    赠送jar包:logback-core-1.2.3.jar; 赠送原API文档:logback-core-1.2.3-javadoc.jar; 赠送源代码:logback-core-1.2.3-sources.jar; 包含翻译后的API文档:logback-core-1.2.3-javadoc-API文档-中文(简体)-...

    logback-classic-1.2.3-API文档-中文版.zip

    赠送jar包:logback-classic-1.2.3.jar; 赠送原API文档:logback-classic-1.2.3-javadoc.jar; 赠送源代码:logback-classic-1.2.3-sources.jar; 赠送Maven依赖信息文件:logback-classic-1.2.3.pom; 包含翻译后...

    logback-classic-1.2.6-API文档-中文版.zip

    赠送jar包:logback-classic-1.2.6.jar; 赠送原API文档:logback-classic-1.2.6-javadoc.jar; 赠送源代码:logback-classic-1.2.6-sources.jar; 赠送Maven依赖信息文件:logback-classic-1.2.6.pom; 包含翻译后...

    logback-ext-spring

    spring使用logback的扩展,使用起来非常方便。在web.xml中配置: &lt;context-param&gt; &lt;param-name&gt;logbackConfigLocation&lt;/param-name&gt; &lt;param-value&gt;/WEB-INF/conf/logback.xml&lt;/param-value&gt; &lt;/context-param&gt; ...

Global site tag (gtag.js) - Google Analytics