Protobuf 编译工具转换 Java 类

Posted 地表最强菜鸡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Protobuf 编译工具转换 Java 类相关的知识,希望对你有一定的参考价值。

1. 下载protoc.exe文件

protoc.exe

2. 转换 Java 对象

假设我们有一个 proto 文件命名为:simple.proto

syntax = "proto3";


option java_package = "test.module.simple.protocol";
option java_outer_classname = "SimpleProtocol"; 
option optimize_for = LITE_RUNTIME;

message Simple{
  string battleId = 1;
  int32 race = 2; 
  bool isMvp = 3;
  float comprehensiveScore = 4; 
  int64 recordTime = 5; 
}

创建一个英文目录,例如:prototest

需要转换的proto文件路径为:prototest/in

输出java文件路径为:prototest/out

把protoc.exe放在目录prototest下:prototest/protoc.exe

你可以通过运行下面的命令来将 simple.proto 文件为基础生成一个 Java 对象

protoc.exe --java_out=./out_dir ./in_dir/*

--java_out为输出路径,其中"."表示当前目录, "./in_dir/*"为源文件路径,"*"表示当前目录下的所有proto文件。

然后你访问特定的文件夹后就可以看到生成的 Java 对象。

以上是关于Protobuf 编译工具转换 Java 类的主要内容,如果未能解决你的问题,请参考以下文章

Protostuff一键序列化工具Protobuf JAVA实现

15Java常用类(数组工具类Arrays)基本类型包装类(Integer类)正则表达式String的split(String regex)和replaceAll(String regex, (代码片

论Protobuf在Java中的Immutability

如何将.proto通过命令转换成.java文件

Gradle + Scala Plugin + Zinc 1.3.5 将 Protobuf 3.7 泄漏到编译器类路径

Go工程化 - Protobuf 编译工具的安装