6
编译一个大的Protobuf定义后,我得到一个6 MB的Java源代码文件。Protoc:如何生成多个Java源文件?
由于在Eclipse和Eclipse中开发的文件的大小与该文件一起工作是一件非常痛苦的事情,当我打开该文件时完全失速/崩溃。
有没有办法让protoc生成多个Java源代码文件而不是一个大文件?
编译一个大的Protobuf定义后,我得到一个6 MB的Java源代码文件。Protoc:如何生成多个Java源文件?
由于在Eclipse和Eclipse中开发的文件的大小与该文件一起工作是一件非常痛苦的事情,当我打开该文件时完全失速/崩溃。
有没有办法让protoc生成多个Java源代码文件而不是一个大文件?
其实有。它没有记录,但你可以添加一行到您的.proto
文件是这样的:
option java_multiple_files = true;
这将使从.proto
文件中的每个顶级消息类型成为一个独立的.java
文件。请注意,您当然必须更新所有代码才能从新位置导入这些类。还要注意,protoc
仍然会生成之前做过的“外部”类,只是没有内部类嵌套它。外部类仍然是获取文件描述符,顶级扩展和其他非类的东西的地方。所有这一切说,如果你有一个大的.proto
文件,我强烈建议将.proto
文件本身分割成彼此导入的较小文件。