zookeeper3.5.4源码环境搭建
1. 准备工作
渠道 | 地址 |
---|---|
网盘 | zk源码下载地址 提取码:5555 |
注意:因为zookeeper是由ant来构建的,所以需要使用ant命令来转换成工程,然后导入idea(当前网盘提供的下载地址无需进行转换操作,下载完毕后直接导入idea即可)
2. idea导入源码
2.1 打开idea选择zookeeper源码进行导入
2.2 注意:导入的时候选择Eclipse
一直next直到finish
3. 关联相关jar包
注意:有两个路径下的jar都需要进行关联
- 路径1:build/lib
- 路径2:build/lib/test/lib
3.1 关联路径1相关jar包
3.2 关联路径2相关jar包
3.3 idea关联Ant的build.xml
要运行Ant需要有一个build.xml,idea关联下面Ant的build.xml,点击intellij IDE右边菜单有个Ant Build小蚂蚁图标,点击后,再点击+,将build.xml添加到Ant Build
4. 服务器端启动程序配置
4.1 复制配置文件zoo.cfg,服务器端启动需要加载此配置文件
设置端口和快照文件存储路径
4.2 搜索启动类QuorumPeerMain
4.3 配置服务端运行主类的启动参数
启动服务端运行主类org.apache.zookeeper.server.QuorumPeerMain,启动此类的main方法的时候需要通过args将zoo.cfg配置文件的完整路径进行传递进入,因此需要配置在Program arguments。
参数一:Program arguments配置,zoo.cfg的路径:(根据自己的项目路径进行配置即可)
G:\gitee_local_ws_lg\zk_ws\zookeeper-release-3.5.4\conf\zoo.cfg
参数二:在VM options配置,即指定到conf目录下的log4j.properties:(根据自己的项目路径进行配置即可)
-Dlog4j.configuration=file:G:/gitee_local_ws_lg/zk_ws/zookeeper-release-3.5.4/conf/log4j.properties
参数三:在Main class配置,当前启动类
org.apache.zookeeper.server.quorum.QuorumPeerMain
参数四:设置配置名称,方便后续区分客户端的启动类
4.4 启动zookeeper服务器端
查看日志:可以得知单机版启动成功,单机版服务端地址为127.0.0.1:2181。
5. 客户端启动程序配置
通过运行ZooKeeperServerMain得到的日志,可以得知ZooKeeper服务端已经启动,服务的地址为127.0.0.1:2181。接下来需要启动客户端来进行连接测试。
5.1 搜索启动类ZooKeeperMain
客户端的启动类为org.apache.zookeeper.ZooKeeperMain
5.2 配置客户端运行主类的启动参数,进行如下配置:
其中配置:-server 127.0.0.1:2181 get /dabing,即客户端连接127.0.0.1:2182,获取节点 /lg 的信息。
5.3 启动运行客户端
搭建结束:搭建成功
问题:
运行程序,控制台:输入命令 ls / 之后代码阻塞
解决
定位到源码类ZookeeperMain.java类,在run方法中添加如下命令,重新运行源码即可