Eclipse 不显示 gradle 项目下的generateProto 任务

Pra*_*shi 2 eclipse protocol-buffers gradle build.gradle grpc

我正在开发一个基于 GRPC 的项目,并使用 gradle 来获取所有依赖项并从我的 proto 文件生成 java 文件。

这是我的build.gradle文件,

apply plugin: 'java-library'
apply plugin: 'java'
apply plugin: 'com.google.protobuf'

// In this section you declare where to find the dependencies of your project
repositories {
    // Use mavenCentral for resolving your dependencies.
    // You can declare any Maven/Ivy/file repository here.
    mavenCentral()
}

buildscript {
  repositories {
    mavenCentral()
  }
  dependencies {
    // ASSUMES GRADLE 2.12 OR HIGHER. Use plugin version 0.7.5 with earlier
    // gradle versions
    classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.5'
  }
}

dependencies {
    // This dependency is exported to consumers, that is to say found on their compile classpath.
    api 'org.apache.commons:commons-math3:3.6.1'

    // This dependency is used internally, and not exposed to consumers on their own compile classpath.
    implementation 'com.google.guava:guava:23.0'

    // Use JUnit test framework
    testImplementation 'junit:junit:4.12'

    //grpc
    compile 'io.grpc:grpc-netty:1.13.1'
    compile 'io.grpc:grpc-protobuf:1.13.1'
    compile 'io.grpc:grpc-stub:1.13.1'
}

protobuf {
  protoc {
    artifact = "com.google.protobuf:protoc:3.5.1-1"
  }
  plugins {
    grpc {
      artifact = 'io.grpc:protoc-gen-grpc-java:1.13.1'
    }
  }
  generateProtoTasks {
    all()*.plugins {
      grpc {}
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

刷新gradle项目后,我在eclipse中的gradle任务下看不到generateProto。我选择了eclipse下的Gradle项目来创建我的项目。

在此输入图像描述

use*_*693 6

他们没有出现的原因可以在这里找到。

基本上generate{*}Prooto任务没有组名称,因此 Eclipse Gradle 任务视图不会显示它们。您可以为它们添加组名称,然后它们就会显示出来。

protobuf {
  generateProtoTasks {
    all().each {
      it.group = 'my gen proto group'
    }
  }
}
Run Code Online (Sandbox Code Playgroud)