目標 在本章我們會著重在如何管理專案相依、解決相互衝突、解析策略並教你如何發佈artifacts 在不同的元件版本下。 歷史 相依管理在建構工具是一個很重要的指標,在傳統的ANT建構工具,他無法幫你處理相依 問題,你必須自己將每一個jar名稱和它的位置寫在build.xml。但是在企業應用,有些軟體 會相依其他函式庫,使用ANT的方式,需要花費很多成本去維護相依的問題。後來,Maven 解決這個缺點,ANT整合Ivy也是解決這個問題。在Gradle有自己的相依管理方式,同時它也 支援Ivy和Maven的套件。Gradle主要定義相依關係 相依環境 當我們開發完成的軟體套件,必須要做版本部署並儲存中央版本庫(central repository),讓所有 團隊可以分享使用這些軟體套件。版本命名參考 http://semver.org/ Gradle相依管理 gradle相依管理定義在dependencies裡面,需要遵循它的規則和定義方式即可。 宣告相依定義: dependencies { <configuration name> <dependencies> } 區塊內定義方式: 1. 個別定義 compile group: 'log4j', name: 'log4j', version: '1.2.16' 2.陣列定義: compile 'log4j:log4j:1.2.16','junit:junit:4.10' 3. Closure定義: compile ('log4j:log4j:1.2.16') ) { // extra configurations } apply plugin: 'java' repositories { mavenCentral() } dependencies { ...