美文网首页Zookeeper
zookeeper源码编译

zookeeper源码编译

作者: loveFXX | 来源:发表于2020-04-28 11:49 被阅读0次

1、github下载zookeeper,并解压。zookeeper版本是3.7.0
zookeeper.git
我的解压目录是:D:\idea-workspace\zookeeper\zookeeper-master
2、IDEA打开
File---Open

image.png
3、添加启动类
org.apache.zookeeper.server.quorum.QuorumPeerMain
image.png
启动类QuorumPeerMain运行

报错处理
1、Apache Zookeeper - Jute项目执行编译compile


image.png

2、Apache Zookeeper - Server 项目执行编译compile


image.png
3、添加启动类配置文件zoo_sample.cfg
D:\idea-workspace\zookeeper\zookeeper-vip2\conf\zoo_sample.cfg
可以复制一份更改为zoo.cfg(D:\idea-workspace\zookeeper\zookeeper-vip2\conf\zoo.cfg)
image.png

4、修改配置文件dataDir数据存储目录
在window下,需要指定D:或其他盘


zoo.png
5、Apache Zookeeper - Server 项目依赖包的scope问题
image.png
注释掉scope
image.png
6、日志数量较少
image.png
把conf目录下的log4j.properties文件复制到zookeeper-server项目的resources目录
image.png
更改zookeeper-server项目的resources目录是resources root
image.png

7、Apache Zookeeper - Server 项目依赖包的scope问题
日志已经比较多啦,但是包SnappyInputStream找不到类


image.png
注释掉org.xerial.snappy的scope,然后刷新依赖
image.png
java.lang.NoClassDefFoundError: org/eclipse/jetty/server/HttpConfiguration$Customizer
image.png
org.eclipse.jetty
image.png
此时服务端启动正常

客户端配置

客户端有两种:ZooKeeperMain启动类、zkCli.cmd点击运行

1、IDEA配置ZooKeeperMain启动

org.apache.zookeeper.ZooKeeperMain


image.png

启动报错:Caused by: java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException


image.png
zookeeper-server的pom.xml依赖修改,注释掉scope
image.png

启动正常


image.png
2、客户端启动也可以通过zkCli.cmd启动

不添加pause会闪退,此时看到无法加载org.apache.zookeeper.ZooKeeperMain类

image.png
解决方法:为项目添加lib包
zookeeper的lib包下载
添加lib包,解压后放到D:\idea-workspace\zookeeper\zookeeper-master(这是我的项目目录)目录下
image.png
image.png
启动类的配置参数的cfg文件名称相同(可选,如果没报错可以不修改)
image.png

相关文章

网友评论

    本文标题:zookeeper源码编译

    本文链接:https://www.haomeiwen.com/subject/cvfvwhtx.html