协议消息端组标记与预期标记不匹配

我一直得到以下堆栈跟踪,我不确定它是什么意思。

Caused by: com.google.protobuf.InvalidProtocolBufferException: Protocol message end-group tag did not match expected tag. at com.google.protobuf.InvalidProtocolBufferException.invalidEndTag(InvalidProtocolBufferException.java:73) at com.google.protobuf.CodedInputStream.checkLastTagWas(CodedInputStream.java:124) at com.google.protobuf.AbstractMessageLite$Builder.mergeFrom(AbstractMessageLite.java:189) at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:732) at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:238) at com.google.protobuf.AbstractMessageLite$Builder.mergeFrom(AbstractMessageLite.java:178) at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:724) 
  • “协议消息端组标记与预期标记不匹配”。 意思?
  • 什么是“消息端组标签”?
  • 这是在某处记录的吗?

protobuf中的组被写为开始/结束数字对 – 有点像需要 ,但格式不同。 基本上它抱怨它找到了一个 (只是:xml只是一个比喻)。 细节在编码规范中 ,但长和短是以下之一:

  • 数据本身就是腐败的(或者是由错误的编码器造成的损坏),或者
  • 阅读时数据正在变得腐败,或者
  • 数据很好,你给了一个错误的解码器

如果我不得不猜测,数据在运输过程中已经损坏 – 因为这是非常可怕的