张龙netty学习笔记 P24 proto代码生成插件

P24

老师教我们使用protobuf代码生成插件protobuf-gradle-plugin来创建proto接口。

根据github页面的README:

  1. 添加grpc依赖
compile 'io.grpc:grpc-netty-shaded:1.19.0'
compile 'io.grpc:grpc-protobuf:1.19.0'
compile 'io.grpc:grpc-stub:1.19.0'
  1. 在gradle配置文件中添加如下代码:
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.8'
    }
}

以及

plugins {
    id "com.google.protobuf" version "0.8.8"
    id "java"
}


protobuf {
    protoc {
        artifact = "com.google.protobuf:protoc:3.6.1"
    }
    plugins {
        grpc {
            artifact = 'io.grpc:protoc-gen-grpc-java:1.19.0'
        }
    }
    generateProtoTasks {
        all()*.plugins {
            grpc {}
        }
    }
}
  1. 如果要配置proto输入目录,可在gradle配置文件添加:(也可以不添加,都使用默认值即可)
sourceSets {
  main {
    proto {
      // 默认'src/main/proto',可再定义其它目录
      srcDir 'src/main/protobuf'
      srcDir 'src/main/protocolbuffers'
      // 默认后缀名为.proto,不建议修改
      include '**/*.protodevel'
    }
    java {
      ...
    }
  }
  test {
    proto {
      // 默认是 'src/test/proto',可添加其它目录 
      srcDir 'src/test/protocolbuffers'
    }
  }
}
  1. 在src/main/proto中编写你的proto文件, 如下图点击,即可生成代码:
    张龙netty学习笔记 P24 proto代码生成插件_第1张图片

    然后代码都在build/generated/source/proto/main中放置。
    张龙netty学习笔记 P24 proto代码生成插件_第2张图片

你可能感兴趣的:(张龙netty学习笔记 P24 proto代码生成插件)