gradle 是以 groovy 語言為基礎,面向java應用為主。基于dsl(領域特定語言)文法的自動化建構工具。
gradle這個工具內建了建構,測試,釋出和其他,比如軟體打包,生成注釋文檔等功能。
之前eclipse使用ant進行軟體的建構功能,需要配置一大堆的xml,但是在gradle中就不需要了。
目前主流的打包方式有ant,maven,gradle。gradle是近幾年發展起來的自動化建構工具,解決ant建構上的繁瑣代碼。
比如在ant上釋出多管道的包,你需要自己寫腳本替換管道名稱,而在gradle中就不需要了。已經内建支援多管道打包。
./build.gradle
./gradle.properties
./gradlew
./gradlew.bat
./local.properties
./setting.gradle
./xxx.iml
./app/build.gradle
./app/app.iml
./app/proguard-rules.pro
gradle項目自動編譯的時候要讀取的配置檔案。比如指定項目的依賴包等。
build.grade有兩個,一個是全局的,一個是在子產品裡面。
全局的build.grade主要設定的是聲明倉庫源,gradle的版本号說明等。
./app/build.grade 設定了子產品的gradle建構配置
這個和上面說的一樣混淆檔案
grade的運作環境配置,比如使用多少記憶體之類的。
自動完成 gradle 環境的腳本,在linux和mac下直接運作gradlew會自動完成gradle環境的搭建。
配置sdk或者ndk的環境路徑,各個機器上這個變量可能都是不一樣的,是以不應該進入版本庫
整個項目的管理,比如這個項目包含哪些子產品等。
iml是intellij子產品檔案。intellij是一款java的ide。android studio是基于開源的intellij idea開發出來的ide。
是以android studio有的ide功能是需要有.iml才能使用的。比如我們删除了iml檔案,可能就在android studio中看不到一些目錄了。