https://github.com/golang/protobufprotoc-gen-go
是 protoc 中的一个插件,它为输入 proto 定义生成 go 绑定(bind)。protoc-gen-go
还有一个插件框架,grpc
是一个插件插件
https://github.com/golang/protobuf/tree/master/protoc-gen-go/grpc$ protoc ./helloworld.proto --go_out=plugins=grpc:.
是否有可能我编写自己的插件并与 grpc 插件一起调用它?$ protoc ./helloworld.proto --go_out=plugins=grpc+myplugin:.
我是否需要强制将我的插件构建到 protoc-gen-go 中?
如果没有,那么 protoc-gen-go 将如何找到 myplugin ?
最佳答案
protoc-gen-go 是一个 protoc 插件。我在下面为自定义工作编写了另一个 protoc 插件的示例。我还使用了调用其他插件的插件。
https://github.com/drekle/protoc-gen-goexample
Protoc 按名称查找这些插件 protoc-gen-<PLUGIN_NAME>
它期望在您的路径中是二进制文件,并将解释它传递的参数,例如 --<PLUGIN_NAME>_out
而不是 --go_out
为您的插件
关于plugins - 如何创建一个 protobuf go plugin 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42337393/