您好,登錄后才能下訂單哦!
研究zookeeper的源碼,第一步就是搭建環境,利用idea啟動zk的源碼,過程比較簡單,網上的教程也是不少,但是搞起來還是會遇到各種各樣的問題,這里做個記錄。
1、zookeeper源碼3.5.5版本
2、idea編輯器
3、基于ant構建zookeeper
1、下載地址:https://ant.apache.org/bindownload.cgi
2、下載版本:1.10.7,zip包
3、解壓,配置環境變量ANT_HOME=D:\apache-ant-1.10.7-bin\apache-ant-1.10.7
4、編輯Path,增加%ANT_HOME%\bin
5、編輯classpath,增加%ANT_HOME%\lib
1、下載zk源碼: https://github.com/apache/zookeeper
2、切換到分支:git checkout branch-3.5.5
3、執行ant eclipse構建:zk不支持idea項目,所有使用ant eclipse 直接構建成eclipse項目,構建成功會出現build success字樣。
一般這里不會報錯。
1、啟動zookeeper服務,找到文件ZooKeeperServerMain,并調用main方法。
2、發現報錯,Version.java下的類Info無法找到,需要新建這個類。
3、新建Info文件,即可
package org.apache.zookeeper.version;
public interface Info {
int MAJOR=1;
int MINOR=0;
int MICRO=0;
String QUALIFIER=null;
int REVISION=-1; //TODO: remove as related to SVN VCS
String REVISION_HASH="1";
String BUILD_DATE="2019-3-4";
}
注意:如果還有其他類找不到,需要多進行幾次ant eclipse,或者重新拉zk的代碼,重新執行ant eclipse。這里我也是遇到了這種情況,經過幾次就可以了。至于為什么還沒有得到答案!
如果啟動過程遇到以下情況:
需要配置log4j的配置,參考下一步的配置。
4、配置啟動ZooKeeperServerMain參數
5、重新執行ZooKeeperServerMain的main方法,啟動zookeeper服務。
6、注意8080端口不要被其他進程占用,因為啟動需要這個端口。
7、在本地使用zkCli.cmd測試服務是否啟動
接下來可以嘗試zookeeper里的各種測試用例,debug代碼,暢游源碼了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。