protobuf的编译方法

protobuf的编译方法如下

protoc --proto_path=IMPORT_PATH        --cpp_out=DST_DIR --java_out=DST_DIR --python_out=DST_DIR          path/to/file.proto


这里有三个需要关注的参数

1.引用文件夹(使用--proto_path  或者 -I),如果proto文件中需要引用其他文件,在这指定(需要绝对路径,也就是需要完整的路径)

2.文件输出文件夹  (--cpp_out 或者 --java_out 或者 --python_out) 根据需要选择需要生成的格式,并且指定文件夹

3.需要编译的pb文件


IMPORT_PATH 引用的路径:当pb文件里面有import关键字时,会在引用路径里面寻找依赖的文件。如果没有给出,会再当前路径下进行寻找。也可以缩写成 -I

--cpp_out=DST_DIR 在 DST_DIR文件夹下生成c++文件
--java_out=DST_DIR  在 DST_DIR文件夹下生成java文件
--python_out=DST_DIR     在 DST_DIR文件夹下生成python文件
path/to/file.proto 需要编译的pb文件

例如:我在/User/hello/Document/pb下有个a.proto 文件,并且a.proto没有引用其他的文件,我想编译c++文件到/User/hello/Document/c++

protoc      --proto_path=/User/hello/Document/pb     --cpp_out=/User/hello/Document/c++   /User/hello/Document/pb/a.proto

这里是 google官方的文档

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值