序言
最近想研究一下zookeeper的源码,稍作记录
开发工具使用IntelliJ IDEA
-
下载zookeeper源码
github下载或者clone,地址:https://github.com/apache/zookeeper
我选择版本:tag 3.6.2
下载完成解压后代码结构如图示
-
使用IDEA直接打开
版本3.6.2项目是标准的maven项目,直接导入按正常的maven项目处理即可 -
Maven编译整个项目
如果不经过编译,直接运行QuorumPeerMain(启动类)的main方法会报错
-
拷贝conf目录下的zoo_example.cfg为zoo.cfg
-
建数据存放目录data
-
调整zookeeper-server模块的pom.xml
有的依赖scope设置为了provided,删除此项限制 -
配置QuorumPeerMain启动参数
-
此时可以直接运行QuorumPeerMain的main方法,控制台显示成功
备注:正常启动没有日志,需要将conf目录下面的log4j.properties文件复制到zookeeper-server模块的编译后classes文件下
至此源码环境构建完毕!谢谢!