Protobuf反序列化错误。找不到方法readStringRequireUtf8()

时间:2016-12-16 09:10:39

标签: java protocol-buffers

我使用协议缓冲区作为数据交换格式。我使用Windows机器发送消息和linux来接收和反序列化它。如果我想在Windows机器上它工作正常。但它在linux中失败并出现此错误

java.lang.NoSuchMethodError: com.google.protobuf.CodedInputStream.readStringRequireUtf8()Ljava/lang/String;
    at com.nas.protobuf.location.LocationProto$LocationEvent.<init>(LocationProto.java:96)
    at com.nas.protobuf.location.LocationProto$LocationEvent.<init>(LocationProto.java:57)
    at com.nas.protobuf.location.LocationProto$LocationEvent$1.parsePartialFrom(LocationProto.java:832)
    at com.nas.protobuf.location.LocationProto$LocationEvent$1.parsePartialFrom(LocationProto.java:827)
    at com.google.protobuf.AbstractParser.parsePartialFrom(AbstractParser.java:141)
    at com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:176)
    at com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:188)
    at com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:193)
    at com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:49)
    at com.nas.protobuf.location.LocationProto$LocationEvent.parseFrom(LocationProto.java:331)

看起来像stange问​​题。 Protobuf版本: 3.1.0

注意:仅在Windows上构建两个项目。在Windows中运行一个,在linux中运行一个,它与protobuf版本 2.6.1

一起工作正常

任何建议都有帮助

0 个答案:

没有答案