欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Gradle快速安裝及入門

 更新時間:2018年10月16日 16:49:23   作者:u010950924  
今天小編就為大家分享一篇關于Gradle快速安裝及入門,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

1、什么是Gradle

Gradle是一種結合了Ant和Maven兩者優(yōu)勢的下一代構建工具,既有Ant構建靈活性的優(yōu)點,也保留Maven約定優(yōu)于配置的思想,在靈活構建和約定構建之間達到了很好的平衡。

2、安裝Gradle

 (1)Gradle屬于解壓配置即可使用的軟件

  下載解壓gradle-4.1-all.zip,例如解壓到:D:/ gradle-4.1

(2)window中設置gradle環(huán)境變量:

  •   GRADLE_HOME    D:/ gradle-4.1
  •   path                    D:/ gradle-4.1/bin(或者:%GRADLE_HOME%\bin)

(3)開始->運行->cmd,輸入如下命令:gradle -v

3、Gradle構建腳本

每一gradle構建腳本都包含三個基本構建塊:project、task和property。每一個構建中至少包含一個project,進而包含一個或多個task(project和task可以分別理解為Ant構建工具中的<project>和<target>標簽)。project和task暴露的屬性可以用來控制構建,project本身自帶很多task并且和通過引入新的插件來引入新的task,task中包含各種構建方法來執(zhí)行項目構建,例如:clean、build等常見的構建方法。

(1)、創(chuàng)建一個空白的build.gradle構建腳本

項目目錄結構(假如其中demo為D:\demo):

  1. demo
  2. |--build.gradle(D:\demo\build.gradle)

執(zhí)行如下命令: 

D:\demo>gradle tasks

執(zhí)行結果輸出:

(2)、創(chuàng)建一個包含有java plugin的構建腳本

項目目錄結構(假如其中demo為D:\demo):

  1. demo
  2. |--build.gradle(D:\demo\build.gradle)

build.gradle 構建腳本內(nèi)容:

apply plugin: 'java'

執(zhí)行如下命令:

D:\demo>gradle tasks

執(zhí)行結果輸出(部分):

總結:對比上面兩 個構建腳本gradle tasks 命令輸出的結果,加了apply plugin: 'java' 插件的構建腳本要多出了 Build tasks 等任務,從第二個 Build tasks 任務中能夠看到,gradle 構建的常用命令 build、clean等,由此可以知道通過引入插件,就可以增加相應的構建功能。

4、Gradle案例實戰(zhàn)

(1)、基于約定由于配置構建項目

基于約定的項目目錄結構圖(和maven默認目錄結構一致):

Gradle采用了Maven約定優(yōu)于配置的思想,只要按照一定的項目目錄結構,構建插件將能都自動找到需要構建的文件進行項目構建,構建如此的簡單。下面是一個標準的項目目錄結構

項目目錄結構(假如其中demo為D:\demo):

  1. demo
  2. |--src
  3. |----main
  4. |------java
  5. |--------com
  6. |-----------hello
  7. |--------------Hello.java(D:\demo\src\main\java\com\hello\Hello.java)
  8. |------resources
  9. |----test
  10. |------java
  11. |------resources
  12. |--build.gradle(D:\demo\build.gradle)

Hello.java  內(nèi)容(只是一個簡單的java類,自己可以任意寫)

public class Hello{
 public static void main(String[] args){
 System.out.println("hello ant");
 }
}

build.gradle  內(nèi)容(只需要引入java 插件)

apply plugin: 'java'

進入D:\demo目錄在命令行執(zhí)行 gradle clean build 命令后的目錄結構:

生成了標準的build輸出目錄 

  1. demo
  2. |--build
  3. |----classes
  4. |------java
  5. |--------main
  6. |----------com
  7. |------------hello
  8. |---------------Hello.class(D:\demo\build\classes\java\main\com\hello\Hello.class)
  9. |----libs
  10. |-------Hello.jar(D:\demo\build\libs\Hello.jar)
  11. |--src
  12. |----main
  13. |------java
  14. |--------com
  15. |-----------hello
  16. |--------------Hello.java(D:\demo\src\main\java\com\hello\Hello.java)
  17. |------resources
  18. |----test
  19. |------java
  20. |------resources
  21. |--build.gradle(D:\demo\build.gradle)

(2)、靈活定制構建項目

當構建歷史遺留項目,由于項目目錄結構的高度自由,gradle可以通過簡單的配置即可完成項目構建

下面是一個非標準的項目目錄結構(Hello.java并未位于標準的目錄中):

項目目錄結構(假如其中demo為D:\demo):

  1. demo
  2. |--src
  3. |------com
  4. |---------hello
  5. |--------------Hello.java(D:\demo\src\com\hello\Hello.java)
  6. |--build.gradle(D:\demo\build.gradle)

build.gradle  內(nèi)容(只需要簡單的指定源文件目錄和編譯輸出目錄,即可定制構建)

apply plugin: 'java'
sourceSets{
 main{
 java {
  srcDirs = ['src'] //指定了java源文件目錄為src而不是默認的src/main/java
 }
 }
}
buildDir = 'out' //指定輸出目錄為out而不是默認的build

進入D:\demo目錄在命令行執(zhí)行 gradle clean build 命令后的目錄結構:

輸出目錄名稱變成了out,但是out中的編譯生成文件目錄等都按照了標準生成 

  1. demo
  2. |--out
  3. |----classes
  4. |------java
  5. |--------main
  6. |----------com
  7. |------------hello
  8. |---------------Hello.class(D:\demo\out\classes\java\main\com\hello\Hello.class)
  9. |----libs
  10. |-------Hello.jar(D:\demo\out\libs\Hello.jar)
  11. |--src
  12. |------com
  13. |---------hello
  14. |--------------Hello.java(D:\demo\src\com\hello\Hello.java)
  15. |--build.gradle(D:\demo\build.gradle)

通過上面兩個簡單的java項目(基于約定由于配置構建項目 和 靈活定制構建項目)構建能夠很明了的提現(xiàn)gradle基于約定構建的簡單快速和制定構建的靈活

5、Gradle優(yōu)缺點

優(yōu)點:基本結合了以往項目構建工具(Ant和Maven)的所有優(yōu)點,是構建工具的首選

缺點:相對較高的理解學習成本

6、Gradle的特性

Gradle使用Groovy作為腳本語言的構建工具,而Groovy是基于JVM的動態(tài)語言,它對Java有著先天的兼容性,你甚至可以在構建腳本中編寫Java程序。

Gradle不像Ant和Maven那樣使用xml編寫腳本,它使用的是Groovy,這意味著你在編寫腳本的時候更像是在寫程序,而不是編寫充滿尖括號又不好閱讀xml文件。

Gradle像Maven一樣遵循約定優(yōu)于配置的原則,也就是說你的項目只要按照標準約定搭建起來,你只需要做簡單的配置就可以構建你的項目了。

Gradle支持現(xiàn)有的Maven倉庫,所以你可以很方面地利用Maven上的所有庫。

Gradle支持依賴傳遞,也就是說當A庫依賴B庫的時候,你只需要引用A庫就可以了,Gradle會自動幫你依賴B庫。

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接

您可能感興趣的文章:

相關文章

  • IDEA添加Java類注釋模版的方法

    IDEA添加Java類注釋模版的方法

    本篇文章主要介紹了IDEA添加Java類注釋模版的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • 詳解SpringBoot如何統(tǒng)一處理返回的信息

    詳解SpringBoot如何統(tǒng)一處理返回的信息

    現(xiàn)在的項目是前后端開發(fā)的居多,那么我們怎么定義接口返回的數(shù)據(jù),怎么使用?Spring?Boot?來統(tǒng)一處理返回的信息呢,本文就來和大家簡單講講
    2023-06-06
  • springboot集成測試容器重啟問題的處理

    springboot集成測試容器重啟問題的處理

    這篇文章主要介紹了springboot集成測試容器重啟問題的處理,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java 線程的優(yōu)先級(setPriority)案例詳解

    Java 線程的優(yōu)先級(setPriority)案例詳解

    這篇文章主要介紹了Java 線程的優(yōu)先級(setPriority)案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Spring HandlerInterceptor實現(xiàn)原理代碼解析

    Spring HandlerInterceptor實現(xiàn)原理代碼解析

    這篇文章主要介紹了Spring HandlerInterceptor實現(xiàn)原理代碼解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • Thymeleaf中th:each及th:if使用方法解析

    Thymeleaf中th:each及th:if使用方法解析

    這篇文章主要介紹了Thymeleaf中th:each及th:if使用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • 淺談mybatis返回單一對象或?qū)ο罅斜淼膯栴}

    淺談mybatis返回單一對象或?qū)ο罅斜淼膯栴}

    這篇文章主要介紹了淺談mybatis返回單一對象或?qū)ο罅斜淼膯栴},具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • SpringBoot整合MQTT小結匯總

    SpringBoot整合MQTT小結匯總

    MQTT 客戶端是運行 MQTT 庫并通過網(wǎng)絡連接到 MQTT 代理的任何設備,是一種基于發(fā)布/訂閱(publish/subscribe)模式的“輕量級”通訊協(xié)議,該協(xié)議構建于 TCP/IP 協(xié)議上,由 IBM 于 1999 年發(fā)明,對SpringBoot整合MQTT相關知識感興趣的朋友一起看看吧
    2022-01-01
  • SpringBoot利用隨機鹽值實現(xiàn)密碼的加密與驗證

    SpringBoot利用隨機鹽值實現(xiàn)密碼的加密與驗證

    這篇文章主要為大家詳細介紹了SpringBoot如何利用隨機鹽值實現(xiàn)密碼的加密與驗證,文中的示例代碼講解詳細,有需要的小伙伴可以參考下
    2024-02-02
  • SpringBoot頂層接口實現(xiàn)類注入項目的方法示例

    SpringBoot頂層接口實現(xiàn)類注入項目的方法示例

    本文主要介紹了SpringBoot頂層接口實現(xiàn)類注入項目的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-06-06

最新評論