文章目录
- 一、 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 .