前提说明

我们使用新版的proto3
JDK(version >=1.8)

步骤

在本机安装protoc编译器

  • mac: brew install protoc
  • linux: apt install -y protobuf-compiler
  • win: https://github.com/protocolbuffers/protobuf/releases/download/v3.19.4/protoc-3.19.4-win64.zip(win用户可能需要配置环境变量,各位作为IT精英这里不赘述了)
验证安装结果

protoc --version

maven/gradle配置

特殊强调:在导入依赖之前一定要使用protoc --version看一下proto编译器的版本,这个版本要与下面的依赖版本一致,不一致的版本导出的代码也可能不同

  • gradle: 在dependencies中追加
implementation group: 'com.google.protobuf', name: 'protobuf-java', version: '3.19.4'
  • maven: 在dependencies标签中追加
<!-- https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java -->
<dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java</artifactId>
    <version>3.19.4</version>
</dependency>

编写proto文件

贴出一个测试样例

syntax = "proto3"; // 必须加的,对proto版本声明
option go_package="./pb"; // 在go中编译后会放在pb包下
option java_package="com.birdy.proto.service"; // 在java中编译会放在com.birdy.proto.service包下

message CPU {
  string brand = 1;
  string name = 2;
  uint32 number_core = 3;
  uint32 number_threads = 4;
  double min_ghz = 5;
  double max_ghz = 6;
}
message GPU {
  string brand = 1;
  string name = 2;
  double min_ghz = 3;
  double max_ghz = 4;
}

使用protoc编译

protoc --java_out=src/main/java src/main/proto/*.proto

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐