使用govendor管理golang packages
前言:
因為工作使用Go當backend, 想當然一開始要把環境建構起來,當時的專案裡,有一份環境建構的文件,
照著文件做,結果環境卻build failed !?
因為都是用 go get github.com/xxxx/packages 下載,
因為某些套件的更新,導致一些原本可以用的method變得不相容,
所以需要一個package管理的套件。
從Go的github wiki有列出幾個管理套件,
有試過govender以及glide,感覺govender比較適合我。
從Go 1.6以後就有支援vendor的功能,1.5可以藉由GO15VENDOREXPERIMENT=1的環境變數來實現vendor功能。
廢話有點多,來點實際的範例吧!
範例:
1. 從 https://github.com/kilfu0701/go-vendor-example 下載git clone https://github.com/kilfu0701/go-vendor-example.git
cd go-vendor-example
export GOPATH=`pwd`
export PATH=$GOPATH/bin:$PATH
2. 安裝govender
go get -u github.com/kardianos/govendor
rm -rf src/github.com src/golang.org # after install govender, remove "src/github.com" & "src/golang.org"
3. 安裝example需要的packages
cd src/app
govendor sync
4. 回到example主目錄 執行測試
cd $GOPATH
go run src/main.go
打開瀏覽器 http://localhost:8081/
參考資料(refs):
govender githubGoalng套件管理wiki
沒有留言:
張貼留言