参考 设置环境
go env -w GOPROXY="https://goproxy.cn"
go env -w GO111MODULE="auto"

设置环境变量
GOPATH: 指你项目路径
在这里插入图片描述
GOROOT: 指的是go安装路径
在这里插入图片描述
在这里插入图片描述
重启电脑

1. 安装protoc

根据操作系统具体安装:

https://github.com/protocolbuffers/protobuf/tags
protoc.exe 直接可以从这里拿, 不用编译,拿现成的

2. 安装protoc-gen-go

go install google.golang.org/protobuf/cmd/protoc-gen-go@latest

3. 安装protoc-gen-go-grpc

go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest

解释下protoc, protoc-gen-go, protoc-gen-go-grpc 关系

protoc编译器是通过插件机制实现对不同语言的支持

protoc-gen-xxx,此处是protoc-gen-go,也就是go语言的插件, 则会把对应.protoc文件转为go语言的格式

protoc-gen-go-xx 此处是又是实现一层静态插件系统, 会把对.protoc RPC 服务接口根据grpc的模板来生成rpc代码(可以自己定制)

吐槽

不得不说protoc 卡了我很久, 很多博客都没有详细说法, git clone protobuf, go install protoc-gen-go,
命令永远是

protoc.exe -go_out=. hello.proto

下载编译安装protoc-gen-go, 永远生成不了protoc.exe, protoc.exe 和 protoc-gen-go.exe 也是两个东西, 后者只是插件, 找了许久才知道protoc.exe 可以直接拿的 , 很多博客都没有人说protoc.exe从哪里来, 真的劝退对刚学习的go的人