背景
考虑一下项目组接入gRPC的话,那后台跟前台的IDC就用了pb,如果每次改完pb文件以后都手动运行一下脚本,然后再代码提交的话就太low了。而且前端和后端的代码是完全隔离的话,那还需要两拨人互相吼一下才能完成pb文件的升级。如果用jenkins来做的话就简单很多,只需要hook住版本库的更新就好了。唯一要注意的是平常在OC和Android里面都是用build脚本来做的,OC用的是pod,Android用的是gradle或maven,如果要接入jenkins的话就直接转成命令行就好了
OC
protoc -I #{proto文件目录} --objc_out=#{输出文件目录} --grpc_out=#{输出文件目录} --plugin=protoc-gen-grpc=/usr/local/bin/grpc_objective_c_plugin #{proto文件目录}/user.proto
Android
protoc -I #{proto文件目录} --javanano_out=#{输出文件目录} --grpc_out=#{输出文件目录} --plugin=protoc-gen-grpc=/grpc-java目录/compiler/build/exe/java_plugin/protoc-gen-grpc-java #{proto文件目录}/user.proto