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]
  • 相关阅读:
    NodeJS简介
    SQL学习笔记(1)
    Linux常用命令03
    Linux常用命令02
    Linux常用命令01
    Java接口和抽象类的区别
    Optional解决空指针
    JVM的内存管理机制-转载
    mysql explain详解-转载
    rabbitmq消息处理-转载
  • 原文地址:https://www.cnblogs.com/GoAhead/p/4189111.html
Copyright © 2011-2022 走看看