我正在开发一个必须为使用谷歌协议缓冲区版本 3.0.0 的目标进行交叉编译的应用程序。有没有办法在 protoc 命令(或 .proto 文件)中指定生成的代码应该与协议缓冲区版本 3.0.0 兼容,即使我用来生成代码的 protoc 是更高版本(例如 3.5.1 )?
更新目标不是一种选择,我不介意在我的开发环境中安装 3.0.0,但是说任何想要构建此代码的人都必须安装特定版本的协议缓冲区似乎有点笨拙。
我正在开发一个必须为使用谷歌协议缓冲区版本 3.0.0 的目标进行交叉编译的应用程序。有没有办法在 protoc 命令(或 .proto 文件)中指定生成的代码应该与协议缓冲区版本 3.0.0 兼容,即使我用来生成代码的 protoc 是更高版本(例如 3.5.1 )?
更新目标不是一种选择,我不介意在我的开发环境中安装 3.0.0,但是说任何想要构建此代码的人都必须安装特定版本的协议缓冲区似乎有点笨拙。
在您的 proto 描述符之上,您可以指定您正在使用 proto3:
syntax = "proto3";
你有一个例子: https ://developers.google.com/protocol-buffers/docs/reference/proto3-spec