您的位置:首页 > 编程语言 > Lua

Protobuf lua 错误:Protocol message tag had invalid wire type

2017-09-17 22:17 3299 查看
这里只列出本人遇到的情况之一

这种错误我犯了很多次了 很多都是proto文件出的问题

今天被这个protobuf搞蒙了 我弄了一晚上 才发现是一个类似于“公式背错了”的问题

老手应该不会犯这种问题 但是既然有第一个人犯过  那99%的概率就会有第二个人犯过

问题还是出现在proto文件的定义上

每个message中从1开始 而不是文件中的第一个变量从1开始

例如 正确的做法:

message kaller1

{

required int32 id = 1;

required int32 age = 2;

}

message kaller2

{

required string msg = 1;

}

错误的做法:

message kaller1

{

required int32 id = 1;

required int32 age = 2;

}

message kaller2

{

required string msg = 3;

}

这里注意一下  如果是枚举 则没有这样的问题

下面这种情况如果变量少的话是可以进行的 但是当序号达到15左右的时候 在lua ParseFromString 就会出现

Protocol message tag had invalid wire type 这种错误

本人猜想 可能是类中最多只能有10多个变量吧

之前嵌套message的问题我感觉跟这个有关 有时间去试试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  protobuf lua