透過開發設定檔案,了解撰寫 Gradle 的基礎知識。
步驟 1. Gradle 腳本
組建腳本和設定檔案是程式碼。它們使用 Kotlin 或 Groovy 編寫。
您可以使用 Kotlin DSL、Groovy DSL 和 Gradle API 來撰寫腳本。
可以在 Gradle 腳本中使用的主要方法包括
-
Gradle API - 例如 Settings API 中的
getRootProject()
-
DSL 中定義的區塊 - 例如 KotlinSettingsScript 中的
plugins{}
區塊 -
外掛定義的擴充功能 - 例如套用
java
外掛時提供的implementation()
和api()
步驟 2. Settings
物件
設定檔是每個 Gradle 建置的進入點。
在初始化階段,Gradle 會在專案根目錄中尋找設定檔。
找到設定檔 settings.gradle(.kts)
時,Gradle 會實例化一個 Settings 物件。
Settings 物件的其中一個用途是讓您宣告所有要包含在建置中的專案。
您可以在設定檔中直接使用 Settings 介面上任何的方法和屬性。
例如
includeBuild("some-build") // Delegates to Settings.includeBuild()
reportsDir = findProject("/myInternalProject") // Delegates to Settings.findProject()
includeBuild('some-build') // Delegates to Settings.includeBuild()
reportsDir = findProject('/myInternalProject') // Delegates to Settings.findProject()
步驟 3. 設定檔
讓我們剖析專案根目錄中的設定檔
settings.gradle.kts
plugins { (1)
id("org.gradle.toolchains.foojay-resolver-convention") version "0.7.0" (2)
}
rootProject.name = "authoring-tutorial" (3)
include("app") (4)
include("lib")
includeBuild("gradle/license-plugin") (5)
1 | 來自 PluginDependenciesSpec API 的 plugins({}) |
2 | 來自 PluginDependenciesSpec API 的 id() 方法 |
3 | 來自 Settings API 的 getRootProject() 方法 |
4 | 來自 Settings API 的 include() 方法 |
5 | 來自 Settings API 的 includeBuild() 方法 |
settings.gradle
plugins { (1)
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.7.0' (2)
}
rootProject.name = 'running-tutorial-groovy' (3)
include('app') (4)
include('lib')
includeBuild('gradle/license-plugin') (5)
1 | 來自 Kotlin DSL 中的 KotlinSettingsScript 的 plugins({}) 方法 |
2 | 來自 PluginDependenciesSpec API 的 id() 方法 |
3 | 來自 Settings API 的 getRootProject() 方法 |
4 | 來自 Settings API 的 include() 方法 |
5 | 來自 Settings API 的 includeBuild() 方法 |
下一步: 撰寫建置指令碼 >>