使用工具:idea,以3.5.8版本为例-安装过程问题解决放在文末
主要参考 作者 A张治峰 的博客(如需了解zookeeper集群配置,参考一下链接博客)
参考博客:https://blog.csdn.net/Zev_java/article/details/115380232
1.下载zookeeper项目
链接:https://github.com/apache/zookeeper/tree/branch-3.5.8
2. 项目启动
用idea打开项目,可能会出现一下问题
2.1 org.apache.zookeeper.Version.Info 缺少Info文件
解决方案一(推荐) : 将下面的文件拷贝到org.apache.zookeeper.Version目录下
package org.apache.zookeeper.version;
public interface Info {
int MAJOR = 1;
int MINOR = 0;
int MICRO = 0;
String QUALIFIER = null;
int REVISION =-1;
String REVISION_HASH = "1";
String BUILD_DATE = "2021-04-14";
}
解决方案二:在org.apache.zookeeper.version.util包里有个VerGen.java文件,运行这个文件来生成Info.Java,这应该是Zookeeper记录项目版本和发布日期的。启动main方法可以生成Info文件。
image-20210414160155190.png
启动main方法还需有如下图配置,1.Vim optional 添加三个参数 2.Before launch 下的build移除掉,让main文件启动不要编译其他文件,否则会报错。
3.5.8 1 2021-04-14 三个参数分别表示zookeeper版本,?,日期(还有一个不清楚,哈~)
我生成的Info文件在 项目根目录\2021-04-14\org\apache\zookeeper\version,然后将生成的文件拖到org.apache.zookeeper.version目录下就行。
image-20210414161045781.png2.1.2 import org.apache.zookeeper.data.Stat; 爆红
解决方案:如下图,compaile编译一下问题就解决了 image-20210414161546357.png2.1.3 其他pom 文件中 plugin 插件爆红,如果解决不了就删掉吧
2.1.4 项目全局打包编译
cmd 打开命令窗口 ,切换到项目根目录,执行命令mvn clean install ‐DskipTests image-20210414161803220.png2.1.5 配置文件
将conf文件夹里的zoo_sample.cfg文件复制一份改名为zoo.cfg 将zoo.cfg文件位置配置到启动参数里 image-20210414162021607.png2.1.6 项目启动文件
开源项目找入口类一般都是从启动脚本去找,可以从bin目录下 的zkServer.sh或 zkServer.cmd里找到启动主类运行即可. 下图可以看到启动类为: org.apache.zookeeper.server.quorum.QuorumPeerMain image-20210414162243535.png2.1.6.1 启动类main方法启动配置
如图:
image-20210414162410196.png
注意
启动之前需要先将zookeeper-server项目里pom.xml文件里依赖的包(除了jline)的scope为provided这一行全部注释掉。
将conf文件夹里的log4j.properties文件复制一份到zookeeper-server项目的 \target\classes 目录下,这样项目启动时才会打印日志
2.1.6.2 本地客户端连接ZK
配置运行参数:-server localhost:2181,如图: image-20210414162621541.png2.1.6.3 本地客户端连接ZK启动客户端连接 image-20210414162715191.png
2.1.6.4 操作节点
ls /
[zookeeper]
create /zhuzhu
Created /zhuzhu
ls /
[zhuzhu, zookeeper]
image-20210414162916792.png
网友评论