Gradle入門 構建指令碼的基礎介紹

2022-09-17 20:12:17 字數 2359 閱讀 5090

1.普通建立

task hello1 

}

2.直接用任務名稱建立

task hello2 = task(hello2)

hello2.dolast

3.任務名稱+任務配置建立

task hello3 = task(hello3,group: baseplugin.build_group)

hello3.dolast

4.taskcontainer 的 create 方法建立

tasks.create(name: 'hello4') 

}

1.依賴於已經存在的任務的任務宣告

task hello 

}task intro

}

執行: gradle -q intro

輸出:hello

i'm gradle

2.懶惰依賴-另一項任務不存在(目前還不存在

task hello 

}task afterhello

}

執行: gradle -q hello

輸出:after hello task

hello

動態定義任務指的是在執行時來定義任務的名稱

4.times 

}}

times是groovyj**a.lang.number中拓展的方法,是乙個定時器。4.times中迴圈建立了三個新任務,隱式變數number的值為0,1,2,3 任務的名稱由 task 加上 number 的值組成,達到了動態定義任務的目的。

執行:gradle -q task0

輸出:i'm task number 0

它在執行時動態地向任務新增依賴項

1.通過 api 訪問任務-新增依賴項

4.times 

}}task0.dependson task2, task3

執行:gradle -q task0

輸出:i'm task number 2

i'm task number 3

i'm task number 0

也可以將行為新增到現有任務中。

2.通過 api 新增行為訪問任務

task hello 

}hello.dofirst

hello.configure

}hello.configure

}

執行:gradle -q hello

輸出:hello venus

hello earth

hello mars

hello jupiter

作為構建指令碼的屬性訪問任務

task hello 

}hello.dolast

執行:gradle -q hello

輸出:hello world!

greetings from the hello task.

gradle允許您定義乙個或多個預設任務,如果沒有指定其他任務,則可以執行這些任務。

defaulttasks 'clean', 'run'

task clean

}task run

}task other

}

執行:gradle -q

輸出:default cleaning!

default running!

gradle有乙個配置階段和乙個執行階段。在配置階段之後,gradle知道應該執行的所有任務。gradle為您提供了乙個利用這些資訊的鉤子。這樣做的乙個用例是檢查發布任務是否在要執行的任務中。根據這一點,您可以為某些變數分配不同的值。

在下面的示例中,執行distributionrelease任務導致不同的值。version變數。

task distribution 

}task release

}gradle.taskgraph.whenready else

}

執行: gradle -q distribution

輸出:we build the zip with version=1.0-snapshot

執行: gradle -q release

輸出:we build the zip with version=1.0

Gradle系列之構建指令碼基礎

setting 檔案 build 檔案 project 和 tasks 任務的建立 任務依賴 任務間的互動 自定義屬性 總結setting 檔案 說一下 gradle 構建專案的 setting 檔案,該檔案主要用來配置當前工程,比如 android 開發中乙個專案中可能有多個子 module,當不...

構建基礎shell指令碼

大二的時候學了shell指令碼程式設計,這在後來的linux系統的使用中給了我很大的幫助,它能讓我更加快捷的完成一些工作。這也是乙個對shell程式設計細節部分的複習系列,參考到了 linux命令列與shell指令碼程式設計大全 第3版 當年我用到的還是第2版,時間過得真快呀。通過這麼乙個簡單的指令...

Gradle多模組的專案構建

repositories task mkdirs sourcesets resources.srcdirs each 分別執行gradle mkdirs任務會自動建立好src目錄。2.對包含在多專案構建中的專案進行配置 可以通過以下步驟,對包含在多專案構建中的專案進行配置 在根專案的根目錄下建立se...