项目地址:google/protobuf
这里直接使用brew工具安装
brew
$ brew install protobuf
brew默认会安装最新版本,执行protoc命令查看当前版本:
protoc
$ protoc --version libprotoc 3.3.2
项目地址:grpc-go
$ go get -u google.golang.org/grpc
项目地址:golang/protobuf
$ go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
安装protoc-gen-go到 $GOPATH/bin。 注意:该目录必须在系统的环境变量$PATH中。
protoc-gen-go
$GOPATH/bin
$PATH
如果一路没有问题的话,到此为止,需要的环境都安装好了?。
使用protoc命令编译.proto文件,不同语言支持需要指定输出参数,如:
.proto
$ protoc --proto_path=IMPORT_PATH --cpp_out=DST_DIR --java_out=DST_DIR --python_out=DST_DIR --go_out=DST_DIR --ruby_out=DST_DIR --javanano_out=DST_DIR --objc_out=DST_DIR --csharp_out=DST_DIR path/to/file.proto
这里详细介绍golang的编译姿势:
-I 参数:指定import路径,可以指定多个-I参数,编译时按顺序查找,不指定时默认查找当前目录
-I
--go_out :golang编译支持,支持以下参数
--go_out
plugins=plugin1+plugin2
plugins=grpc
M
import
import_prefix=xxx
import_path=foo/bar
package
go_package
:编译文件路径 .proto文件路径(支持通配符)
完整示例:
$ protoc -I . --go_out=plugins=grpc,Mfoo/bar.proto=bar,import_prefix=foo/,import_path=foo/bar:. ./*.proto
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8