Gradle是啥?
gradle是一個基于Apache Ant和Apache Maven概念的專案自動化建構工具,
所謂的構建程序就是:編譯,測驗,依賴管理,打包,部署,以前我們開發是手動匯入jar包的,類似于面向程序,一步一步來,缺什么包就導什么包,很麻煩,容易出錯,jar包版本還不統一,需要關心jar包與jar包之間的依賴,通過采用gradle的構建方式,只需通過complie xxxxx引入一個jar包,然后這個jar包所依賴的其他jar包gradle會自動幫引入,無需關心jar包與jar包之間的依賴,在什么地方以什么形式引入外部jar包,都委托給gradle管理了,體現了面象物件的思想,無需關心內部實作程序,直接引入就可,(注意Gradle不是一種編程語言,它不能幫你實作軟體中的任何實際功能)
自動化構建工具有哪些?
Ant 2000年誕生,主要是編譯代碼,測驗代碼,
Maven 2007年誕生,主要是編譯測驗,依賴管理,
Gradle 2012年誕生 主要是是編譯測驗,依賴管理,DSL自定義擴展任務,
Android Studio中的默認工具是Gradle
Android studio的默認插件是Gradle,或許是因為Gradle編譯速度比Maven 快很多,而且Gradle完全兼容kotlin語言,當我們新建一個android 專案,gradle已經默認配置好了,打開gradle-wrapper.properties檔案,查看配置資訊:

可以看到distributionUrl=https://services.gradle.org/distributions/gradle-5.1.1-all.zip說明默認使用的是gradle 5.1.1 的版本,當然可以改成我們本地有的版本,distributionUrl=file:///+gradle的本地路徑,例如:distributionUrl=file:///c:/tools/gradle-5.6.4.zip就可以了,
android gradle插件詳解地址:https://developer.android.com/studio/releases/gradle-plugin?hl=zh-cn
build.gradle
build.gradle檔案分別在專案目錄下和對應module目錄都有存在,
下圖是專案目錄下的build.gradle:

接下來是module目錄的build.gradle:

module目錄下的的build.gradle里的dependencies {…}里面的依賴,是單單一個模塊本身所需的依賴!是程式運行的編譯依賴!
在External Libraries檔案夾下,如圖

可以看到專案添加的所有依賴,包括子依賴都會顯示在里面,除build.gradle里的dependencies {…}里面添加的依賴之外的依賴都是子依賴,子依賴都是gradle智能自動的幫你添加的,它檢查到你主動添加的依賴,又依賴于其他依賴,就會幫你加上,另外當gradle檢查到依賴間有沖突時,出現依賴間多次參考相同jar包(只能將庫里的原始碼打進去,而資源什么的不能打進去)、aar包(自動的將資源檔案和原始碼一起打進去,不用擔心資源缺失的問題),它只會默認選擇版本較高的添加,不會重復添加,這就是gradle出色的依賴管理,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/172154.html
標籤:其他
