HBase源码包启动失败:为什么找不到必要的类?

HBase源码包启动失败:为什么找不到必要的类?

hbase启动失败:无法加载必需类

运行HBase时,出现“找不到或无法加载主类org.apache.hadoop.hbase.util.HBaseConfTool和org.apache.hadoop.hbase.zookeeper.ZKServerTool”错误。尽管这些类文件存在于源码目录,HBase仍无法启动。问题发生在使用HBase源码包(hbase-2.4.17-src.tar.gz)进行安装时。

用户首先尝试在docker容器中运行,失败后切换到ubuntu 20.04虚拟机,安装OpenJDK 8,并下载了HBase 2.4.17源码包。解压后直接运行启动脚本,报错提示找不到上述两个类,但fd -u命令确认文件存在。

根本原因在于使用了源码包(hbase-2.4.17-src.tar.gz),而非预编译的二进制包(hbase-2.4.17-bin.tar.gz)。源码包需要编译才能生成可执行文件,直接运行源码包中的脚本会导致类加载失败。

解决方案:使用HBase预编译二进制包 (hbase-2.4.17-bin.tar.gz) 即可解决问题。

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享