1. 程式人生 > >Gradle 10分鐘上手指南_http://www.cnblogs.com/yjmyzz/p/gradle-getting-start.html

Gradle 10分鐘上手指南_http://www.cnblogs.com/yjmyzz/p/gradle-getting-start.html

Gradle 10分鐘上手指南

java的原始碼構建工具,大致經歷了 ant -> maven -> gradle 這個過程,每一次進步,都是在解決之前的工具所帶來的問題,簡單來說:

1. ant 功能雖然也很強大,但是過於靈活,規範性不足,對目錄結構及build.xml沒有預設約定 ,10個程式設計師做同樣的專案,可能最終出來的10個專案,目錄結構和build.xml都不相同,而且沒有統一的依賴項管理。

2. maven的出現,解決了規範的問題,也順帶解決了依賴項統一管理的問題,但是規範性又太強了,基本上可以認為是一種強規範,用久了之後,感覺靈活性顯略不足,而且pom.xml採用xml結構,專案大了,xml就有些冗長。

3. gradle則是綜合了ant與maven的優點,吸收了ant中task的思想,然後把maven的目錄規範及倉庫思想也融合進來了,但是允許使用者自由修改預設的規範(比如:原始碼目錄可以自己指定),另外配置檔案採用groovy語言來書寫(格式初看上去有點類似json,比較精減),注意:groovy是一門真正的【可程式設計】語言,而不是象css、html之類的標記性「符號」,所以從這個意義上講,配置檔案build.gradle本身就是一份原始碼,這份原始碼,最終交由gradle來處理執行,完成程式碼的構建工作。

gradle的發展速度之快,是ant 與 maven所不能比擬的,看下

gradle官網的文件就能感受到了,一個新興的工具文件如此之齊全,可見大家對它的認可程度。

 

安裝:

安裝十分簡單,到官司下載最新版(是一個壓縮包),解壓某個目錄,然後在環境變數裡新增GRADLE_HOME, 再把該變數新增到path路徑中,保證能找到gradle命令即可,參考下面的環境變數設定:

1 2 3 4 5 ... export  GRADLE_HOME=/Users/yjmyzz/app/gradle-2.7 ... export  PATH= "...bin:${GRADLE_HOME}/bin" ...

在終端下,輸入gradle -version,如果能顯示gradle的版本號,就表示ok了

 

下面結合intellij idea + gradle 簡單記錄一下用法(假設大家都有ant, 特別是 maven的使用經驗,如果對maven完全不熟悉的朋友,建議先移步閱讀一下本部落格的maven入門文章

一、idea匯入gradle的幾個設定要點

點選看大圖

注意打紅圈的地方,一定要勾上Offline work,否則會連到官司下載一堆東西,而牆內的速度,你們懂的,等到天昏地暗,海枯石爛也沒有盡頭   點選看大圖 匯入成功後,記得看下專案設定,參考上圖,Use auto-import 這裡記得要勾上,否則可能會遇到以下怪現象: 終端下gradle build 一切正常,但是在idea裡,開啟java原始碼,看到各種紅叉,提示這個類找不到,那個包沒有引用。   提示:每個idea專案,專案根目錄下都對應了一個.iml檔案,它記錄了該專案使用了哪些第3方的包,所以在IDE環境中,它才能感知到各種第3方的原始碼,寫程式碼時彈出各種智慧下拉提示,有興趣的話,建議大家看下這個檔案的內容,肯定會有收穫 。   二、gradle基本用法 基本上,gradle是通過各種plugin來完成相關功能的,這點是從maven學來的,所以基本上學習gradle,就是掌握一些常見plugin的用法及關鍵配置。 1、建立專案 隨便建一個空目錄,然後cd 進入 再 gradle init 就可以了   2、示例專案 我在github及coding.net上建立一個hello-gradle的專案,可以快速幫助大家快速掌握各種常規用法   https://coding.net/u/yjmyzz/p/hello-gradle/git https://github.com/yjmyzz/hello-gradle   直接按 README.md裡的說法,全部自己練一次,就差不多可以滿足日常開發需要了。     參考文章: Gradle入門系列(1):簡介 Gradle入門系列(2):第一個Java專案 Gradle入門系列(3):依賴管理 Gradle入門系列(4):建立二進位制釋出版本 Gradle入門系列(5):建立多專案構建