protoc工具使用之golang

protoc安装命令:

aplinx : apk add protoc

centos: yum install protoc


为了支持编译为 go,需要安装 protoc-gen-go 插件

protoc-gen-go 安装:

1、使用以下命令安装Go协议编译器插件:

$ go install google.golang.org/protobuf/cmd/protoc-gen-go$ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc

2、更新你的PATH,这样协议编译器就可以找到插件:

$ export PATH="$PATH:$(go env GOPATH)/bin"

protoc 常用的参数如下:

--proto_path=. #指定proto文件的路径,填写 . 表示就在当前目录下

--go_out=. #表示编译后的文件存放路径;

--go_opt={xxx.proto}={xxx.proto的路径}

# 示例:protoc --go_opt=Mprotos/bar.proto=example.com/project/protos/foo

最简单的编译命令

protoc --go_out=. helloworld.proto 

--{xxx}_out 指令是必须的,因为要输出具体的编程语言代码。

这个输出文件的路径是执行命令的路径,如果我们不在 .proto 文件目录下执行命令,则输出的代码便不是相同位置了。为了解决这个问题,我们可以使用:

--go_opt=paths=source_relative

这样在别的地方执行命令,生成的代码会跟 .proto 文件放在相同的位置。

protoc -I=./ --go_out=./ ./test.proto # -I 是proto文件存放的路径 # --go_out  是序列化golang的代码路径 # 后面的test.proto 是需要序列化的proto文件
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章