问题描述
原因
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
可以看到问题解决,成功运行。
2、修改配置文件,关键就在于hbase-env.sh 这个文件。
文件目录:/${hbase}/conf/hbase-env.sh
${hbase}是相对路径,路径不能错了!
完美解决问题。
个人建议用第二种方法,目前来说一劳永逸,后续有问题在继续更新。