码迷,mamicode.com
首页 > 其他好文 > 详细

go 的 protoc 插件调用逻辑

时间:2016-05-13 17:06:51      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

要让protoc使用插件,需要做下面事情:

Place the plugin binary somewhere in the PATH and give it the name "protoc-gen-NAME" (replacing "NAME" with the name of your plugin).

If you then invoke protoc with the parameter –NAME_out=OUT_DIR (again, replace "NAME" with your plugin‘s name), protoc will invoke your plugin to generate the output, which will be placed in OUT_DIR.

Place the plugin binary anywhere, with any name, and pass the –plugin parameter to protoc to direct it to your plugin like so:

protoc --plugin=protoc-gen-NAME=path/to/mybinary --NAME_out=OUT_DIR

On Windows, make sure to include the .exe suffix:

protoc --plugin=protoc-gen-NAME=path/to/mybinary.exe --NAME_out=OUT_DIR

参考: https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.compiler.plugin

 

产生go的 grpc 代码的插件命令为:

protoc --go_out=plugins=grpc,import_path=mypackage:. *.proto
 
 
这里通过 --NAME_out ,就能知道是需要找 protoc-gen-NAME 插件, 即 protoc-gen-go 插件。
而 --go_out=plugins=grpc 则会在 https://github.com/golang/protobuf 这里找到 
https://github.com/golang/protobuf/blob/master/protoc-gen-go/grpc/grpc.go  做为插件。
 

go 的 protoc 插件调用逻辑

标签:

原文地址:http://www.cnblogs.com/ghj1976/p/5489971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!