引入Sentinel后出现multiple SLF4J bindings错误该如何解决?

2024-12-01 23:21:14 编辑:抖狐科技 来源:摘自互联网

引入sentinel后出现multiple slf4j bindings错误该如何解决?

引入sentinel导致的multiple slf4j bindings问题

在项目添加sentinel依赖后,可能会遇到multiple slf4j bindings报错。这是由于项目中可能存在多个slf4j实现导致。一般情况下, 添加如下依赖排除即可解决问题:

<dependency>
    <groupid>com.alibaba.cloud</groupid>
    <artifactid>spring-cloud-starter-alibaba-sentinel</artifactid>
    <version>2.2.9.release</version>
    <exclusions>
        <exclusion>
            <groupid>org.slf4j</groupid>
            <artifactid>slf4j-log4j12</artifactid>
        </exclusion>
    </exclusions>
</dependency>

登录后复制

然而,有时添加exclusion也不一定能解决问题。这可能是因为项目中存在其他依赖引用了slf4j-log4j12.jar,导致在运行时仍然加载了该jar包。可以尝试以下解决方法:

  • 检查依赖树:使用maven依赖树检查命令mvn dependency:tree,查看是否存在其他依赖引入了slf4j-log4j12.jar。
  • 强制排除slf4j-log4j12:在pom.xml中添加如下依赖:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.25</version>
    <scope>provided</scope>
</dependency>

登录后复制

  • 升级sentinel版本:升级sentinel版本到2.3.0以上,该版本已解决multiple slf4j bindings问题。

以上就是引入Sentinel后出现multiple SLF4J bindings错误该如何解决?的详细内容,更多请关注抖狐科技其它相关文章!

本站文章均为抖狐网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
我们猜你喜欢