使用ScalaPBC为Scala 2.10编译协议缓冲区?

时间:2015-11-08 12:49:58

标签: scala protocol-buffers scalapb

我正在尝试使用Trueaccord的ScalaPBC将简单的protobuf文件编译为Scala。 我仅限于Scala 2.10,由于对案例类的实现限制(“案例类不能超过22个参数”),因此无法编译生成的类。

我使用Trueaccord的scalapb-runtime和compilerplugin用于Scala 2.10版本0.4.20和protobuf-java版本2.6.1。

这是我正在编译的protobuf(这些字段没有任何意义):

if ( sum > threshold)  {
    context.write(key, result);
}

有没有办法将上面的protobuf编译成适用于Scala 2.10的Scala代码?

1 个答案:

答案 0 :(得分:1)

不幸的是没有。在Scala 2.10中,ScalaPB仅限于包含22个字段或更少字段的消息。

如果您能够更改协议缓冲区的结构,请考虑使用嵌套消息或重复字段来减少每条消息中的字段数。