win protobuffer使用简易教程

一、protocol buffer 下载

protocol buffer下载链接
在该页面中请选择下图方框中的链接,这个是win平台下的预编译版本,不然还要自己下载源码编译。
win protobuffer使用简易教程_第1张图片

二、编译proto文件时注意事项

  1. 命令格式 protoc –java_out=./ *.proto,可以先执行命令”protoc -h”查看命令语法。
  2. 编译的Java源代码输出路径写对,尤其是win平台以\为分隔符。
  3. 编译时报提示
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: address.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)

只需要在proto文件头添加注释syntax = “proto3”;或者syntax = “proto2”;即可

三、使用Java源码过程中报错

  1. 解析时报错:Protocol message tag had invalid wire type 异常
    原因:二进制的内容不能直接在http协议传输,传输的内容可能有压缩或者base64编码,需要对接收到的二进制数据做解压缩或者base64解码。
  2. 解析式报错:Protocol message contained an invalid tag (zero)
    原因:待解析的二进制数据中不全是pb二进制数据,可能还有其它内容,例如二进制数据头部约定的错误信息长度、错误信息字符串内容等。

你可能感兴趣的:(Language,protobuffer)