【问题标题】:how to create a protobuf go plugin plugin如何创建一个 protobuf go plugin 插件
【发布时间】:2017-07-09 07:25:12
【问题描述】:

https://github.com/golang/protobuf

protoc-gen-go 是 protoc 中的一个插件,它为输入 proto 定义生成 go 绑定。

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 ?

【问题讨论】:

标签: plugins grpc protoc


【解决方案1】:

protoc-gen-go 是一个 protoc 插件。我在下面为自定义工作编写了另一个 protoc 插件的示例。我还使用了调用其他插件的插件。

https://github.com/drekle/protoc-gen-goexample

Protoc 按名称 protoc-gen-<PLUGIN_NAME> 查找这些插件,它希望它是您路径中的二进制文件,并将解释它传递的参数,例如 --<PLUGIN_NAME>_out 而不是 --go_out 为您的插件

【讨论】:

    猜你喜欢
    • 2021-04-24
    • 2016-02-02
    • 1970-01-01
    • 2014-07-02
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多