我创建了一个简单的 .proto 文件并执行了编译器(protoc-2.5.0rc1-win32.zip)。为规定的包生成了一个java文件。但是,生成的文件无法编译。.proto 文件很简单,只有一条消息和一堆简单类型的可选字段(正确编号)。.java 文件无法编译,例如:
- 构造函数 GeneratedMessage.FieldAccessorTable(Descriptors.Descriptor, String[]) 未定义
- 未定义 GeneratedMessage.FieldAccessorTable 类型的方法 ensureFieldAccessorsInitialized(Class, Class)
- ...以及同一行中的许多其他错误(例如尝试覆盖超类中的最终方法)
提示 API 版本级别不匹配的错误?有任何想法吗?
谢谢 已解决:发现我正在使用的 API 预期的 proto 版本是 2.4.1 并且我使用的是最新版本。