谷歌protobuf生成的Java不支持toByteArray

时间:2016-11-24 15:47:59

标签: java protocol-buffers

我使用protoc

生成Java源代码

https://github.com/mapbox/vector-tile-spec/blob/master/2.1/vector_tile.proto

The protobuf documentation表示生成的类应支持toByteArray方法。它没有。 (除了尝试调用它之外,我还搜索了生成的文件VectorTile.java,其中没有toByteArray代码。)

NB。这不是Protobuf - Missing toByteArray()?的重复 - 使用构建消息的构建器的错误。我没有这样做。

我很感激任何见解。

1 个答案:

答案 0 :(得分:2)

toByteArray()方法在AbstractMessageLite中实现,生成的代码继承该方法。生成的代码中没有toByteArray()声明,因为它是继承的。调用message.toByteArray()将正常工作 - 如果它不适合您,请显示您的代码并生成错误消息。