zoukankan      html  css  js  c++  java
  • Gradle Goodness: Display Available Tasks

    To see which tasks are available for our build we can run Gradle with the command-line option -t or --tasks. Gradle outputs the available tasks from our build script. By default only the tasks which are dependencies on other tasks are shown. To see all tasks we must add the command-line option --all.

    00.3.times { counter ->
    01.task "lib$counter" {
    02.description = "Build lib$counter"
    03.if (counter > 0) {
    04.dependsOn = ["lib${counter - 1}"]
    05.}
    06.}
    07.}
    08. 
    09.task compile {
    10.dependsOn {
    11.project.tasks.findAll {
    12.it.name.startsWith('lib')
    13.}
    14.}
    15.description = "Compile sources"
    16.}
    $ gradle -q -t
     
    ------------------------------------------------------------
    Root Project
    ------------------------------------------------------------
     
    Tasks
    -----
    :compile - Compile sources
    $ gradle -q --tasks -all
     
    ------------------------------------------------------------
    Root Project
    ------------------------------------------------------------
     
    Tasks
    -----
    :compile - Compile sources
    :lib0 - Build lib0
    :lib1 - Build lib1
    :lib2 - Build lib2

    But if we add our tasks to a group, we get even more verbose output. Gradle will group the tasks together and without the --all option we get to see all tasks belonging to the group, even those that are dependency tasks. And with the --all option we see for each task on which tasks it depends on. So by setting the group property on the task we get much better output when we ask Gradle about the available tasks.

    00.3.times { counter ->
    01.task "lib$counter" {
    02.description = "Build lib$counter"
    03.if (counter > 0) {
    04.dependsOn = ["lib${counter - 1}"]
    05.}
    06.}
    07.}
    08. 
    09.task compile {
    10.dependsOn {
    11.project.tasks.findAll {
    12.it.name.startsWith('lib')
    13.}
    14.}
    15.description = "Compile sources"
    16.}
    17. 
    18.tasks*.group = 'Compile'
    $ gradle -q -t
     
    ------------------------------------------------------------
    Root Project
    ------------------------------------------------------------
     
    Compile tasks
    -------------
    :compile - Compile sources
    :lib0 - Build lib0
    :lib1 - Build lib1
    :lib2 - Build lib2
    $ gradle -q --tasks -all
     
    ------------------------------------------------------------
    Root Project
    ------------------------------------------------------------
     
    Compile tasks
    -------------
    :compile - Compile sources [:lib0, :lib1, :lib2]
    :lib0 - Build lib0
    :lib1 - Build lib1 [:lib0]
    :lib2 - Build lib2 [:lib1]
  • 相关阅读:
    实时需要分析
    .NET 单元测试的艺术&单元测试之道C#版
    代码演示C#各2.0到8.0版本[FK,2.0-4.8.0]
    微软Visual Studio Code 0.8.0发布,新增多种主题
    ASP.NET 5 Beta 7 版本
    软件开发设计原则
    Immutable(不可变)集合
    使用Hystrix提高系统可用性
    微软发布 Windows Server 2016 预览版第三版,开发者要重点关注Nano Server
    Akka.NET v1.0 已发布,支持Mono
  • 原文地址:https://www.cnblogs.com/GoAhead/p/4189111.html
Copyright © 2011-2022 走看看