Module子產品用于go的版本管理,可以脫離gopath的路勁限制,未來有望替代go - vendor包
具體使用步驟:
1)首先確定go版本>=1.11
2)去到工程(假如加”hello“)根目錄下面,執行 go mod init xx.xx.com 指令生成一個go.mod檔案,命名格式一般為:公司.項目.com
注:這個的命名要求一定是域名方式,其他的後續會出錯。再就是,如果go.mod已經生成了,先要删除
3)執行go mod tidy指令,它會添加缺失的子產品以及移除不需要的子產品。執行成功會生成go.sum檔案
注:在添加google那邊包時,可能出現下載下傳不下來的情況,這是因為中國屏蔽導緻。解決方式是設定:export GOPROXY=https://goproxy.io
然後再次執行go mod tidy
4)執行指令go mod verify來檢查目前子產品的依賴是否全部下載下傳下來,是否下載下傳下來被修改過。如果所有的子產品都沒有被修改過,那麼執行這條指令之後,會列印all modules verified。
5)執行指令go mod vendor生成vendor檔案夾,該檔案夾下将會放置你go.mod檔案描述的依賴包,檔案夾下同時還有一個檔案modules.txt,它是你整個工程的所有子產品。
在執行這條指令之前,如果你工程之前有vendor目錄,應該先進行删除。同理go mod vendor -v會将添加到vendor中的子產品列印出來;
4、go test測試單個檔案和測試單個函數
1、測試單個檔案指令
go test -v xxx.go xx.go
2、測試單個方法
go test -v -test.run 函數