zk报错:找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain|Error contacting service
错误信息
一顿操作猛如虎,感觉自己像个二百五!!
之前使用zk的版本是3.4.6,于是乎今天按照3.4.6的安装步骤,安装部署zk的3.8.0版本,就出错了!
错误提示:
Error contacting service. It is probably not running.
继续,查看日志信息
cd /usr/src/zookeeper-3.8.0/logs && ls # 进入安装目录的根目录下的logs目录
cat zookeeper-root-server-centOS7.out #查看日志
错误: 找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain
报错原因
你下载使用的zk是未编译的apache-zookeeper-3.8.0.tar.gz, 自zk3.5.5版本以后,已编译的jar包,尾部有bin,应该使用的是apache-zookeeper-3.8.0-bin.tar.gz。
解决方案
1、进入zk官网,重新下载bin安装包。
https://zookeeper.apache.org/releases.html#download ,点击下载
2、简单粗暴,删除rm -rf 删除刚才的安装包和解压文件
rm -rf /usr/src/zookeeper-3.8.0
删除后,重新下载apache-zookeeper-3.8.0-bin.tar.gz,然后重新解压。
特别提示
若本机安装有多版本zk,注意修改/usr/src/zookeeper-3.8.0/conf目录下的zoo.cfg配置文件中的持久化目录和日志目录:dataDir=/tmp/zookeeper
不同版本的zk,持久化和日志目录设置为不同的,比如:
usr/local/datas/zookeeper/zkData3.8.0
usr/local/datas/zookeeper/zkLogData3.8.0
效果展示
zkServer.sh status #查看zk当前服务状态
zkServer.sh start #启动zk服务
zkServer.sh status #再次查看(需要稍等几秒)
jps #该命令,也可以查看zk是否启动,对应的进程名称为QuorumPeerMain
尾言
惯性思维(用zk3.4.6的方式,去安装部署zk3.8.0),有时候会把我们带进坑里,以此为戒。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?