Gradle構建腳本
Gradle構建腳本文件用來處理兩件事情:一個是項目和另一個的任務。每個Gradle
生成表示一個或多個項目。一個項目表示一個JAR庫或Web應用程序,也可能表示由其他項目產生的JAR文件組裝的ZIP。 簡單地說,一個項目是由不同的任務組成。一個任務是指構建執行的一塊工作。任務可能是編譯一些類,創建一個JAR
,產生的Javadoc
或發佈一些歸檔文件庫。
注:Gradle使用Groovy語言編寫腳本。
編寫構建腳本
Gradle提供了一個域特定語言(DSL),用於描述構建。 它使用 Groovy 語言,使其更容易來形容和構建。Gradle 中的每一個構建腳本使用UTF-8進行編碼保存,並命名爲 build.gradle
。
創建build.gradle文件
看看下面的例子演示一個小腳本,它將打印 「Yiibai gradle qick start
「。複製並保存以下腳本到文件:D:workspyiibai.comgradle-3.1studyscriptbuild.gradle
。腳本中定義一個任務名稱 helloword
,這是用來打印」Yiibai gradle qick start
「 字符串。
在命令提示符下,進入存儲 build.gradle
文件的目錄並執行以下命令,得到結果如下所示 -
D:workspyiibai.comgradle-3.1studyscript>gradle -q helloword
Yiibai gradle qick start
可以通過指定一個快捷鍵(<<符號表示)到 doLast 語句來簡化 helloword
任務。 如果將快捷方式添加到上述 helloword
任務,它看起來如下面腳本。
task helloword << {
println 'Yiibai gradle qick start'
}
使用 gradle -q helloword
命令執行上面的腳本,也會得到同樣的輸出結果。
Gradle如何使用Groovy
Gradle 構建腳本使用 Groovy API。 作爲一個入門,我們來來看看下面的例子。以下示例演示將字符串轉換爲大寫。
複製並保存下面的代碼到 build.gradle
文件。
task upper << {
String expString = 'YiiBai gradle tutorials'
println "Original: " + expString
println "Upper case: " + expString.toUpperCase()}
使用 gradle –q upper
執行上面的代碼,如果命令執行成功,會得到下面的輸出。
D:workspyiibai.comgradle-3.1studyscript>gradle -q upper
Original: YiiBai gradle tutorials
Upper case: YIIBAI GRADLE TUTORIALS
下面的例子 4 次打印隱式參數 ($it
) 的值。複製並保存下面的代碼到 build.gradle
文件。
task count << {
4.times {
print "$it "
}
}
使用 gradle –q count
執行上面的代碼,如果命令執行成功,會得到下面的輸出。
D:workspyiibai.comgradle-3.1studyscript>gradle -q count
0 1 2 3
Groovy的JDK方法
Groovy增加了很多有用的方法到標準的Java類。 例如,從Java API可迭代實現它遍歷Iterable接口的元素的each()
方法。
複製並保存下面的代碼到 build.gradle
文件。
task groovyJDKMethod << {
String myName = "Yiibai";
myName.each() {
println "${it}"
};
}
使用 gradle –q groovyJDKMethod
執行上面的代碼,如果命令執行成功,會得到下面的輸出。
D:workspyiibai.comgradle-3.1studyscript>gradle -q groovyJDKMethod
Y
i
i
b
a
i