[atguigu@node11 hbase]$ bin/start-hbase.sh SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.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 [org.slf4j.impl.Log4jLoggerFactory] running master, logging to /usr/local/hbase/bin/../logs/hbase-atguigu-master-node11.out SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation
时间: 2023-07-12 15:58:36 浏览: 329
这是一个启动HBase的Shell脚本,在启动的过程中出现了SLF4J绑定的问题。具体的错误信息是Class path contains multiple SLF4J bindings,意思是类路径中包含了多个SLF4J绑定。在这个错误信息中,SLF4J发现了两个绑定,一个在/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar中,另一个在/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.jar中。SLF4J提供了一个链接http://www.slf4j.org/codes.html#multiple_bindings来解释这个问题。最后,该错误信息指出实际的绑定类型是org.slf4j.impl.Log4jLoggerFactory。
相关问题
[atguigu@node11 hbase]$ ./bin/start-hbase.sh SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.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 [org.slf4j.impl.Log4jLoggerFactory] running master, logging to /usr/local/hbase/bin/../logs/hbase-atguigu-master-node11.out SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation怎么办
这个问题是因为在类路径(classpath)中出现了多个SLF4J绑定的原因。可以尝试以下解决方案:
1. 在`$HBASE_HOME/conf/hbase-env.sh`中添加以下代码:
```
export HBASE_OPTS="$HBASE_OPTS -Dorg.slf4j.simpleLogger.showMultipleLoggers=true"
```
这样可以在启动时查看具体的多绑定信息。
2. 在`$HBASE_HOME/conf/log4j.properties`中添加以下代码:
```
# Remove duplicate SLF4J bindings
log4j.logger.org.apache.hadoop.metrics2=ERROR,console
```
这样可以将日志级别调整为ERROR,从而隐藏多绑定的警告信息。
3. 如果以上两种方法均未解决问题,可以考虑移除多余的SLF4J绑定。具体方法是在HBase的类路径中只保留一个SLF4J绑定的jar包,删除其他的绑定jar包。
127.0.0.1: running zookeeper, logging to /usr/local/hbase/bin/../logs/hbase-atguigu-zookeeper-node11.out 127.0.0.1: SLF4J: Class path contains multiple SLF4J bindings. 127.0.0.1: SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] 127.0.0.1: SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class] 127.0.0.1: SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 127.0.0.1: SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] running master, logging to /usr/local/hbase/bin/../logs/hbase-atguigu-master-node11.out SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. : running regionserver, logging to /usr/local/hbase/bin/../logs/hbase-atguigu-regionserver-node11.out怎么办
这段日志提示了多个 SLF4J 绑定的问题,可能会导致日志输出异常。建议按照以下步骤进行处理:
1. 找到项目中引入的 SLF4J 相关的依赖,检查是否存在多个版本的 SLF4J 绑定。
2. 如果存在多个版本的绑定,考虑将其中一个版本的依赖排除掉,或者使用 Maven 或 Gradle 等构建工具的 Dependency Management 功能,将所有依赖的 SLF4J 版本统一。
3. 如果无法解决问题,可以参考 SLF4J 的官方文档,进行进一步的调试和处理。
阅读全文
相关推荐












