Protobuf - 缺少toByteArray()?

时间:2014-08-11 01:18:06

标签: java protocol-buffers

我可能只是在我的proto文件中弄乱了一些东西,但我似乎无法调用toByteArray函数。

使用Java和proto文件是用protoc编译的。

我在说什么......

BaseMessage.builder = baseMessage = BaseMessage.newBuilder();
Acknowledgement.builder = acknowledgeMessage = Acknowledgement.newBuilder();

acknowledgeMessage.setOk(true);

baseMessage.setAcknowledgement(acknowledgeMessage);
baseMessage.build();

byte[] send = baseMessage.toByteArray();

BaseMessage被声明为......

public static final class BaseMessage   
       extends com.google.protobuf.GeneratedMessage   
       implements BaseMessageOrBuilder {

也许我错过了什么......

BaseMessage正在扩展GeneratedMessage,它从AbstractMessageLite继承toByteArray(),其中toByteArray是公共的...所以我应该可以使用它吗?

1 个答案:

答案 0 :(得分:4)

是的,你可能意味着:

baseMessage.build().toByteArray()