gradle这个任务参考

时间:2015-05-27 12:15:19

标签: gradle build.gradle

我想将一些额外的代码移到封闭处并在任务范围内调用它,该怎么做?

我有类似的东西,而且效果很好

Boolean

但希望有类似的东西(当然下面的示例并不起作用)

task AwesomeTest(type: Test) {
   filter {
      setIncludePatterns(filtered as String[])
   }
}

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

this是指projectTask的实例作为第一个参数传递给闭包。您需要为其命名或使用it。你走了:

apply plugin: 'java'

ext.extraFilter = { task ->         
   configure(task) {
      filter {
         setIncludePatterns('*')
      }
   }
}

task AwesomeTest(type: Test) { t ->
   extraFilter(t)
}