Gradle構建腳本檔用來處理兩件事情:一個是專案和另一個的任務。每個Gradle
生成表示一個或多個專案。一個專案表示一個JAR庫或Web應用程式,也可能表示由其他專案產生的JAR檔組裝的ZIP。簡單地說,一個專案是由不同的任務組成。一個任務是指構建執行的一塊工作。任務可能是編譯一些類,創建一個JAR
,產生的Javadoc
或發佈一些歸檔檔庫。
注:Gradle使用Groovy語言編寫腳本。
編寫構建腳本
Gradle提供了一個域特定語言(DSL),用於描述構建。它使用 Groovy 語言,使其更容易來形容和構建。Gradle 中的每一個構建腳本使用UTF-8進行編碼保存,並命名為 build.gradle
。
創建build.gradle檔
看看下麵的例子演示一個小腳本,它將列印 “zaixian gradle qick start
“。複製並保存以下腳本到檔:D:/workspy/iibai.com/gradle-3.1/studyscript
。腳本中定義一個任務名稱 helloword
,這是用來列印”zaixian gradle qick start
“ 字串。
在命令提示符下,進入存儲 build.gradle
檔的目錄並執行以下命令,得到結果如下所示 -
D:workspxuhuhu.comgradle-3.1studyscript>gradle -q helloword
zaixian gradle qick start
可以通過指定一個快捷鍵(<<符號表示)到 doLast 語句來簡化 helloword
任務。如果將快捷方式添加到上述 helloword
任務,它看起來如下面腳本。
task helloword << {
println 'zaixian gradle qick start'
}
使用 gradle -q helloword
命令執行上面的腳本,也會得到同樣的輸出結果。
Gradle如何使用Groovy
Gradle 構建腳本使用 Groovy API。作為一個入門,我們來來看看下麵的例子。以下示例演示將字串轉換為大寫。
複製並保存下麵的代碼到 build.gradle
檔。
task upper << {
String expString = 'zaixian gradle tutorials'
println "Original: " + expString
println "Upper case: " + expString.toUpperCase()}
使用 gradle –q upper
執行上面的代碼,如果命令執行成功,會得到下麵的輸出。
D:/workspy/iibai.com/gradle-3.1/studyscript>gradle -q upper
Original: zaixian gradle tutorials
Upper case: zaixian GRADLE TUTORIALS
下麵的例子 4 次列印隱式參數 ($it
) 的值。複製並保存下麵的代碼到 build.gradle
檔。
task count << {
4.times {
print "$it "
}
}
使用 gradle –q count
執行上面的代碼,如果命令執行成功,會得到下麵的輸出。
D:/workspy/iibai.com/gradle-3.1/studyscript>gradle -q count
0 1 2 3
Groovy的JDK方法
Groovy增加了很多有用的方法到標準的Java類。例如,從Java API可迭代實現它遍曆Iterable介面的元素的each()
方法。
複製並保存下麵的代碼到 build.gradle
檔。
task groovyJDKMethod << {
String myName = "zaixian";
myName.each() {
println "${it}"
};
}
使用 gradle –q groovyJDKMethod
執行上面的代碼,如果命令執行成功,會得到下麵的輸出。
D:/workspy/iibai.com/gradle-3.1/studyscript>gradle -q groovyJDKMethod
Y
i
i
b
a
i
以下是糾正/補充內容:
啊,從編寫構建腳本那開始,照你描述的做,在cmd命令窗口模式下運行,報構建錯誤怎麼處理啊 提交時間:2019-08-14
啊,從編寫構建腳本那開始,照你描述的做,在cmd命令窗口模式下運行,報構建錯誤怎麼處理啊?cmd 到你指定的bulid.gradle 目錄下才能執行 提交時間:2019-10-29