1. 程式人生 > >Gradle基礎:1: 簡介與安裝

Gradle基礎:1: 簡介與安裝

gradle
這篇文章主要介紹一下Grale的主要特性以及安裝方式。

什麼是Gradle

Gradle是一個開源的自動構建工具,在Apache Ant和Apache Maven的相關概念基礎上發展而來,與Maven最大的區別之一在於引入了基於Groovy的DSL語言而非使用繁瑣複雜的XML來進行專案的配置。

Gradle的第一個版本與2007年釋出,截止到目前為止最新版本已經是5.0 RC3,穩定版本在4.10.2(2018/09/20)

概要資訊

專案 說明
開源/閉源 開源
License類別 Apache License 2.0
開發語言 Java, Groovy, Kotlin
當前穩定版本 5.0 RC 3(2018/11/15)
更新頻度 平均每月數次

特點

  • 最為顯著的特點是使用Groovy作為指令碼構建語言,具有更好的擴充套件性
  • *支援多個工程
  • 與Maven和Ivy相容
  • 通過task執行具體操作
  • 解決多模組問題
  • 解決依賴問題
  • 支援多種語言的編譯(Android的官方構建工具)
    在這裡插入圖片描述

Gradle vs Maven

關於哪個更好的問題,有人說Maven更好

也有人說Gradle更好,比如Gradle的官方比較:

而stackshare.io目前的調查結果是這樣的:
在這裡插入圖片描述

在來看一下一個稍微有點舊的統計資料,它顯示了Gradle的上升趨勢,Ant已經日薄西山這是事實。
在這裡插入圖片描述

安裝

這系列文章以目前穩定版本4.10.2為例進行演示。

前提條件

基於java的跨平臺特性,Gradle可以執行在大部分主流的作業系統上,所需要的前提僅僅是JDK或者JRE:

  • 版本依賴: JDK或JRE7及以上
  • Groovy: Gradle自帶Groovy,無需自行安裝,如果已經安裝也會被Gradle所忽略。

安裝方式

  • 可以使用一些Package Manager進行安裝,比如MacOS:

brew install gradle

  • 或者使用sdk

sdk install gradle 4.10.2

  • 也可以使用Gradle釋出的二進位制包,本文使用此種方式

在Mac上下載並解壓之後,如果所示,也可以放到你中意的目錄下,只是後續的環境變數設定保持一致即可。

liumiaocn:gradle liumiao$ ls
gradle-4.10.2         gradle-4.10.2-bin.zip
liumiaocn:gradle liumiao$ ls gradle-4.10.2
LICENSE              bin                  init.d               media
NOTICE               getting-started.html lib
liumiaocn:gradle liumiao$

環境變數設定

將gradle檔案新增到PATH搜尋路徑中即可,比如可以如下方式寫入profile中。

export GRADLE_HOME=/Library/gradle/gradle-4.10.2
export PATH=$PATH:${GRADLE_HOME}/bin

版本確認

使用gradle -v即可確認gradle版本和相關資訊

liumiaocn:~ liumiao$ gradle -v

Welcome to Gradle 4.10.2!

Here are the highlights of this release:
 - Incremental Java compilation by default
 - Periodic Gradle caches cleanup
 - Gradle Kotlin DSL 1.0-RC6
 - Nested included builds
 - SNAPSHOT plugin versions in the `plugins {}` block

For more details see https://docs.gradle.org/4.10.2/release-notes.html


------------------------------------------------------------
Gradle 4.10.2
------------------------------------------------------------

Build time:   2018-09-19 18:10:15 UTC
Revision:     b4d8d5d170bb4ba516e88d7fe5647e2323d791dd

Kotlin DSL:   1.0-rc-6
Kotlin:       1.2.61
Groovy:       2.4.15
Ant:          Apache Ant(TM) version 1.9.11 compiled on March 23 2018
JVM:          1.8.0_191 (Oracle Corporation 25.191-b12)
OS:           Mac OS X 10.14 x86_64

liumiaocn:~ liumiao$ 

參考內容