Gradle入門系列(1) 簡介

2021-08-06 01:27:09 字數 2399 閱讀 2160

gradle是一種構建工具,它拋棄了基於xml的構建指令碼,取而代之的是採用一種基於groovy的內部領域特定語言。近期,gradle獲得了極大的關注,這也是我決定去研究gradle的原因。

這篇文章是gradle教程的第一篇,我們有兩個目標:

我們開始吧,先看一下如何安裝gradle。

如果在安裝過程中遇到問題,可以進一步檢視官方的安裝指南。

如果我們使用的作業系統是os x,我們可以使用homebrew安裝gradle,在命令提示符中輸入以下命令:

shell

1

brew

install

gradle

我們可以驗證一下gradle是否工作正常,在命令提示符中執行命令gradle -v即可,如果gradle工作正常,我們應該能看到以下輸出結果(當然,windows和linux使用者看到的結果會有細微差異)。

shell

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

>

gradle-v

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

gradle

1.12

------

----

----

----

----

----

----

----

----

----

----

----

----

------

build

time

:2014-04

-2909:

24:31utc

build

number

:none

revision

:a831fa866d46cbee94e61a09af15f9dd95987421

groovy

:1.8.6

ant:apache

ant(tm)

version

1.9.3

compiled

ondecember

232013

ivy:2.2.0

jvm:1.8.0

(oracle

corporation

25.0

-b70)

os:macosx

10.9.3

x86_64

下面我們來快速瀏覽一下gradle構建的基本概念。

在gradle中,有兩個基本概念:專案和任務。請看以下詳解:

那麼,這些概念和gradle的構建又有什麼聯絡呢?好,每一次gradle的構建都包含乙個或多個專案。

下面這張圖展示了上面所談到的這些概念的關係。

我們能夠使用以下配置檔案對gradle的構建進行配置:

你可以在這篇文章中獲得更多關於gradle構建指令碼的資訊。

我們繼續,下面我們看一下如果使用gradle外掛程式為構建工作加入新功能。

gradle的設計理念是,所有有用的特性都由gradle外掛程式提供,乙個gradle外掛程式能夠:

gradle使用者手冊提供了一系列標準gradle外掛程式。

在我們為專案加入gradle外掛程式時,我們可以根據名稱或型別來指定gradle外掛程式。

我們可以將下面這行**加入到build.gradle檔案中,它通過名稱指定gradle外掛程式(這裡的名稱是foo):

shell

1

plugin

:'foo'

另一方面,我們也可以通過型別指定gradle外掛程式,將下面這行**加入到build.gradle檔案中(這裡的型別是com.bar.foo):

shell

1

plugin

:'com.bar.foo'

你可以閱讀這篇文章,掌握應用外掛程式的更多資訊。

今天就到這裡,我們來總結一下我們所學的內容。

這篇教程講授了三部分內容:

Gradle Gradle入門系列(1) 簡介

gradle是一種構建工具,它拋棄了基於xml的構建指令碼,取而代之的是採用一種基於groovy的內部領域特定語言。近期,gradle獲得了極大的關注,這也是我決定去研究gradle的原因。我們開始吧,先看一下如何安裝gradle。如果在安裝過程中遇到問題,可以進一步檢視官方的安裝指南。如果我們使用...

STL系列(1) 簡介

c stl standard template library標準模板庫 是通用類模板和演算法的集合,它提供給程式設計師一些標準的資料結構的實現如 queues 佇列 lists 鍊錶 和 stacks 棧 等.c stl 提供給程式設計師以下三類資料結構的實現 1.順序性容器 1 vector 從...

Android Service簡介(系列1)

android service簡介 系列1 package zhangphil.service import android.content.intent import android.os.ibinder import android.util.log 僅僅create一次 override pu...