Protoc:如何生成多个Java源代码文件?

19
在编译一个大的Protobuf定义后,我得到了一个6MB的Java源代码文件。由于它太大,因此在Eclipse中开发时与该文件一起工作非常困难,而且Eclipse每当我打开该文件时都会完全停顿/崩溃。是否有一种方法可以让protoc生成多个Java源文件,而不是一个大文件?
1个回答

47

实际上是可以的。虽然没有文档记录,但您可以像这样在.proto文件中添加一行:

实际上是可以的。虽然没有文档记录,但您可以像这样在.proto文件中添加一行:

option java_multiple_files = true;

这将把.proto文件中的每个顶层消息类型放入一个独立的.java文件中。请注意,您当然需要更新所有代码以从它们的新位置导入这些类。还要注意,protoc仍会生成之前的“外部”类,只是没有其中嵌套的内部类。外部类仍然是获取文件描述符、顶层扩展和其他非类事物的地方。

话虽如此,如果您有一个那么大的.proto文件,强烈建议将其拆分为导入彼此的较小文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接