HBase和Hadoop的jar包冲突问题解决方案。

问题描述

HBase和Hadoop的jar包冲突问题解决方案。

原因

HBase和Hadoop的jar包冲突问题解决方案。

HBase启动时默认会把hadoop的jar包拿过来,下面的参数默认是false,也就是包含hadoop lib文件夹下的jar包。我们可以看到是hbase-2.2.2 和 hadoop-3.1.3中的slf4j-log4j12-1.7.25.jar冲突导致的问题。

解决办法

1、找到HBase中的slf4j-log4j12-1.7.25.jar包,重命名或者删除,即可解决(建议重命名)。

# jar包路径
hbase-2.2.2/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar

HBase和Hadoop的jar包冲突问题解决方案。

可以看到问题解决,成功运行。

HBase和Hadoop的jar包冲突问题解决方案。

2、修改配置文件,关键就在于hbase-env.sh 这个文件。

文件目录:/${hbase}/conf/hbase-env.sh 
${hbase}是相对路径,路径不能错了!

HBase和Hadoop的jar包冲突问题解决方案。

HBase和Hadoop的jar包冲突问题解决方案。

完美解决问题。

个人建议用第二种方法,目前来说一劳永逸,后续有问题在继续更新。

上一篇:06 HBase安装与伪分布式配置


下一篇:07 HBase操作