protoc-gen-msgid
使用 crc32 生成协议 id ,需要在 proto 文件中定义 go_package
选项
--msgid_out
: protoc 必须的选项,实际上不会用到这个,用 .
即可
--msgid_opt
: 定义生成语言类型,及相应的配置选项,其中 lang
是必须的,用来定义生成语言,支持 go
, erl
, lua
生成 go
protoc --plugin=protoc-gen-msgid=./protoc-gen-msgid --msgid_out=. --msgid_opt="lang=go,out=./out/abc.go,gopkg=foo" proto/*.proto
out
: 定义输出文件
gopkg
: 定义输出文件的包名
生成 erl
protoc --plugin=protoc-gen-msgid=./protoc-gen-msgid --msgid_out=. --msgid_opt="lang=erl,outerl=./out/abc.erl,outhrl=./out/abc.hrl" proto/*.proto
outerl
: 定义输出模块
outhrl
: 定义输出头文件
生成 lua
protoc --plugin=protoc-gen-msgid=./protoc-gen-msgid --msgid_out=. --msgid_opt="lang=lua,out=./out/abc.lua" proto/*.proto