文章目錄
- 一、 protoc
- 二、protoc-gen-go
- 三、protoc-gen-go-grpc
一、 protoc
1,下載:https://github.com/google/protobuf/releases
下載對應的protoc
,注意選擇windows
2,下好之后解壓就行,然后把bin
目錄加入到環境變量即可
二、protoc-gen-go
網上很多資料說
go get -u github.com/golang/protobuf/protoc-gen-go@latest
但目前該模塊已被棄用,繼續使用該命令將出現錯誤,提示該庫已經被棄用,讓我們使用go get -u google.golang.org/protobuf/
當我們按新的方式go get -u google.golang.org/protobuf/
后,編寫好proto
文件,然后執行protoc
命令,又會出現如下錯誤
因此我們需要安裝protoc-gen-go.exe
可執行文件,當protoc
命令執行時,當編譯器調用時傳遞了 --go_out
命令行標志時, protoc
就會使用它。
- 下載:
git clone https://github.com/protocolbuffers/protobuf-go
- 用
GoLand
打開,到達.\cmd\protoc-gen-go\
目錄,執行go install .
,如下
- 此時,我們就可以在
gopath
路徑下發現,產生了一個protoc-gen-go.exe
文件,(ps:gopath
路徑可以通過go env
命令查看)
- 這時候再執行
protoc
命令,就能正常生成pb.go
文件了
注意:test
包是自動幫我們生成的,因為我們使用option go_package = "/test";
指定生成的go
代碼的包名
三、protoc-gen-go-grpc
protoc-gen-go-grpc 與 protoc-gen-go的安裝步驟幾乎一模一樣,就是GitHub庫不一樣而已
,因此就簡要描述一下啦
git clone -b v1.30.0 https://github.com/grpc/grpc-go #克隆項目
cd cmd/protoc-gen-go-grpc #用GoLand打開后,進入到指定目錄
go install .