Hyperledger fabric 原始碼分析之環境準備
背景
從16年讀研確定方向為區塊鏈以後,實驗室的環境就是hyperledger,從版本0.6一路走過來到現在的1.4,也算是見證了hyperledger fabric的壯大和發展之路。但是那時候更多的是研究性質,瞭解的是fabric的整體架構和技術背後的理論知識,並沒有深入閱讀fabric的程式碼。
重新開始
正好目前也是在一家公司從事區塊鏈研發(方向為聯盟鏈),所以從長遠計和個人興趣愛好計,從今天起,開始研究fabric的原始碼,弄懂原理,看明白程式碼。
說明
- 分析的原始碼版本是fabric 目前最新的1.4版本,並且在未來很長時間都會基於這個版本做原始碼分析,0.6和1.0版本架構區別很大,但1.0以後整體變化並沒有多少,沒有必要為了追求最新版的程式碼天天換來換去。連結
- 不定期更新,現在正處在要準備畢業階段,學業、實習工作很繁重,精力有限。
- 能力有限,原始碼分析不保證都是對的。哈哈,儘量不坑人、不坑隊友。
開始
使用的工具是IDEA,目前我使用的系統是Mac。
- 安裝golang
使用homebrew一鍵安裝的,首先安裝homebrew,使用命令
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然後安裝golang
brew install go
檢視是否安裝上個了golang
go env
然後繼續配置golang環境
首先進入配置檔案
vi ~/.bash_profile //進入配置檔案
然後修改檔案,仔細看檔案,不要直接copy
GOROOT: go安裝目錄
GOPATH:go工作目錄
GOBIN:go可執行檔案目錄
PATH:將go可執行檔案加入PATH中
##golang export GOROOT=/usr/local/go export GOPATH=/Users/xxx/Documents/macGolangEnv/GOPATH ###gopath最好自己選擇個目錄 export GOBIN=$GOPATH/bin export PATH=$PATH:$GOBIN
然後在編輯完之後,讓檔案生效
source ~/.bash_profile
-
安裝goland
fabric是go語言,所以可以考慮使用jetbrains家族的IDEA或者是專門為go推出的goland軟體,我是用的goland,下載地址 http://www.jetbrains.com/go/ 。安裝參考IDEA,網上安裝文件一大批,就不多說了。 -
下載fabric 1.4版的原始碼
goland–>check out from version control—>git—>URL處填寫 https://github.com/hyperledger/fabric.git 目前版本是fabric 1.4.也可以自己去下載1.4版的原始碼然後匯入,下載連結 https://github.com/hyperledger/fabric/releases
改錯
這一步主要就是github原始碼匯入goland軟體之後,發現檔案中的import出現了各種報錯,主要原因是依賴的包沒有匯入。
基本思路就兩種:1、直接嘗試掛個vpn,在goland軟體上惦記如圖 go get -t *** 這種,不過這個時候有可能是下載不了的。2、手工方式去網上down下載然後放入golang本地倉庫裡。
一個一個排錯就好了。