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