flume测试提示SLF4J绑定错误

Posted EEEurekaaa!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flume测试提示SLF4J绑定错误相关的知识,希望对你有一定的参考价值。

在flume启动时出现如下错误

错误内容:

启动 Flume 时,找到了多个 SLF4J bindings(绑定),SLF4J 如同 log4j 一样,是打印日志的工具。

原因:

Found binding in...,在加载 jar 包时,找到了多个版本不同的 SLF4J,导致了程序出错。

可以看到我的错误时因为hadoop-3.1.4/share/hadoop/common/lib下的slf4j版本与flume中的slf4j版本不同导致错误

由于 Flume 是 Hadoop 生态的一个日志采集工具,所以当启动 Flume 后,Flume 就会去加载 Hadoop_HOME 中的类,所以启动时可以看到加载了许多 Hadoop 下的包,当 SLF4J 时,在 Flume 自己目录下也有 SLF4J,就导致了类的冲突,而且版本不一样。

解决方法:

可以将flume下的slf4j文件删除或者修改名字进行备份

bak表示备份

mv /export/servers/apache-flume-1.9.0-bin/lib/slf4j-log4j12-1.7.25.jar /export/servers/apache-flume-1.9.0-bin/lib/slf4j-log4j12-1.7.25.jar.bak


 

 

以上是关于flume测试提示SLF4J绑定错误的主要内容,如果未能解决你的问题,请参考以下文章

GWT,Gradle,多个SLF4J绑定错误

Log4j和SLF4J日志错误

SLF4J:类路径包含多个 SLF4J 绑定 slf4j-test vs logback-classic

SLF4J:类路径包含多个 SLF4J 绑定

Spring Boot:多个 SLF4J 绑定

多个 SLF4J 绑定 activemq-all-5.6.0.jar 出错