Gradle自定义任务配置

Gradle自定义任务配置,gradle,Gradle,我正在开发一个Gradle插件,它有一个带有两个成员变量的自定义任务,我想使用扩展类初始化它们。我正在扩展插件类,如下所示: class CustomPlugin implements Plugin<Project> { @Override void apply(Project project) { def extension = project.extensions.create("Custom", CustomExtension) project.task

我正在开发一个Gradle插件,它有一个带有两个成员变量的自定义任务,我想使用扩展类初始化它们。我正在扩展插件类,如下所示:

class CustomPlugin implements Plugin<Project> {

  @Override void apply(Project project) {
    def extension = project.extensions.create("Custom", CustomExtension)

    project.task("doTask", type: CustomTask, {
      group = "Awesome"
      description = "Runs a custom routine"
      filePath = extension.filePath
      name = extension.name
    })
  }
}

只有第二种方法似乎对我有效。我在其他插件中注意到的一个常见模式是,任务往往是使用
project在插件中定义的。任务(“taskName”),我建议在这里和其他地方检查类似问题的答案。你好,Peter,我在这里或gradle论坛上很难找到答案。下面是该插件的链接:基本上,我在build.gradle脚本中使用闭包来初始化CustomTask。这是正确的做事方式吗?我不确定在这种情况下为什么我需要一个扩展类。
 @TaskAction void removeUnusedResources() {
    String filePath = project.Custom.lintXmlFilePath
    String name = project.Custom.ignoreResFiles

    // Proceed with the task action
}