Gradle
構建指令碼定義了構建專案的過程; 每個專案包含一些依賴項和一些發表項。依賴性意味著支援構建專案的東西,例如來自其他專案的所需JAR
檔案以及類路徑中的外部JAR
(如JDBC JAR
或Eh-cache JAR
)。發布表示專案的結果,如測試類檔案和構建檔案,如war
檔案。
Gradle
負責構建和發布結果。 發布基於定義的任務。 可能希望將檔案複製到本地目錄,或將其上傳到遠端Maven或lvy儲存庫,或者可以在同一個多專案構建中使用另一個專案的檔案。 發布的過程稱為發布。
Gradle
遵循一些特殊語法來定義依賴關係。 以下指令碼定義了兩個依賴項,一個是Hibernate core 3.6.7
,第二個是Junit 4.0
和更高版本。如下面的程式碼所示,可在build.gradle
檔案中使用此程式碼。
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.7.Final'
testCompile group: 'junit', name: 'junit', version: '4.+'
}
依賴關係組態只是定義了一組依賴關係。 您可以使用此功能宣告從Web下載外部依賴關係。這定義了以下不同的標準組態。
外部依賴是一種依賴。 這是對當前構建之外構建的一些檔案的依賴,並且儲存在某種型別的儲存庫中,例如:Maven central,corporate Maven或lvy repository或本地檔案系統中的目錄。
以下程式碼片段是定義外部依賴關係。 在build.gradle
檔案中使用如下程式碼。
dependencies {
compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.7.Final'
}
在新增外部依賴關係時, Gradle在儲存庫中查詢它們。 儲存庫只是檔案的集合,按分組,名稱和版本來組織構造。 預設情況下,Gradle不定義任何儲存庫。 我們必須至少明確地定義一個儲存庫。 下面的程式碼片段定義了如何定義 maven
倉庫。 在build.gradle
檔案中使用此程式碼。
repositories {
mavenCentral()
}
下面的程式碼是定義遠端maven
。 在build.gradle
檔案中可使用下面程式碼。
repositories {
maven {
url "http://repo.mycompany.com/maven2"
}
}
依賴關係組態也用於發布檔案。 這些已發布的檔案稱為工件。 通常,我們使用外掛來定義工件。 但是需要告訴Gradle
在哪裡發布檔案。可以通過將儲存庫附加到上傳存檔任務來實現此目的。 請檢視以下用於發布Maven
儲存庫的語法。 執行時,Gradle
將根據專案需求生成並上傳Pom.xml
。 在build.gradle
檔案中使用此程式碼。
apply plugin: 'maven'
uploadArchives {
repositories {
mavenDeployer {
repository(url: "file://localhost/tmp/myRepo/")
}
}
}