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]
  • 相关阅读:
    Source not found for GeneratedMethodAccessor127.invoke(Object, Object[]) line: not available
    Common Lisp学习资源整理
    安装lispbox出现:error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory
    《完全用Linux工作》作者:王垠
    记一次奇怪的电脑故障
    Linux下修改键盘映射
    百度与谷歌的差别,英文检索的重要性
    你今天的习惯决定了你将来的位置
    Coursera上一个不错的Java课
    无限制使用ppt转pdf功能
  • 原文地址:https://www.cnblogs.com/GoAhead/p/4189111.html
Copyright © 2011-2022 走看看