久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > 為什么說(shuō)Gradle是Android進(jìn)階繞不去的坎?

        為什么說(shuō)Gradle是Android進(jìn)階繞不去的坎?

        來(lái)源:千鋒教育
        發(fā)布人:xqq
        時(shí)間: 2023-10-13 06:26:28 1697149588

        一、Gradle是Android進(jìn)階繞不去的坎的原因

        Gradle 是 Android 開(kāi)發(fā)中使用非常廣泛的構(gòu)建工具,也是 Google 推薦的構(gòu)建系統(tǒng)。Gradle 作為官方主推的構(gòu)建系統(tǒng),目前已經(jīng)深度應(yīng)用于 Android 的多個(gè)技術(shù)體系中,例如組件化開(kāi)發(fā)、產(chǎn)物構(gòu)建、單元測(cè)試等。

        二、Gradle是什么

        Gradle是一個(gè)自動(dòng)化構(gòu)建繼承工具,它基于JVM,運(yùn)行在JAVA的環(huán)境之上,可以通過(guò)簡(jiǎn)單的配置就可以快速的編譯打包,同時(shí)它也支持多工程構(gòu)建、局部構(gòu)建、多方式以來(lái)等特點(diǎn)。Android開(kāi)發(fā)者是如何解除到Gradle的,因?yàn)槊慨?dāng)我們創(chuàng)建一個(gè)項(xiàng)目,就會(huì)的模塊目錄下和根目錄下默認(rèn)創(chuàng)建bulid.gradle,我們通過(guò)引用庫(kù)來(lái)管理第三方的Library,也可以編寫(xiě)一些變量和腳本去編譯我們的程序,比如修改生成apk的名稱(chēng)等。

        三、gradle 和maven 對(duì)比

        Gradle作為一款基于Groovy語(yǔ)言的構(gòu)建工具,和Gradle相比,ant顯得冗余復(fù)雜,maven顯得有些死板落后,而gradle基于DSL語(yǔ)法,特點(diǎn)明顯:簡(jiǎn)潔、靈活、可讀性強(qiáng)。

        1、基礎(chǔ)配置信息

        maven使用.pom文件,基于XML,gradle使用.gradle文件,基于Groovy,gradle去掉maven中需要固定配置的groupId,artfactId,package等基本參數(shù),通過(guò) apply plugin: ‘java’,apply plugin: ‘war’來(lái)表示打包方式,也提供sourceCompatibility,version等一些實(shí)用的標(biāo)簽。

        2、依賴(lài)管理

        Gradle的jar包管理支持maven下Repository方式,也支持Ant的Ivy方式,由于maven的Repository已經(jīng)非常成熟,gradle在兼容Repository做得非常方便,定義maven的repository:mavenLocal() :maven 本地庫(kù)、mavenCentral() : maven 遠(yuǎn)程庫(kù)、mavenRepo urls: 自定義庫(kù)路徑。

        maven通過(guò)groupId、name和version到配置的Repository里尋找指定依賴(lài)中的Jar包。Gradle的生命周期更為復(fù)雜,但也支持Maven依賴(lài)中的構(gòu)建生命周期,compile、runtime、testCompile和testRuntime分別對(duì)應(yīng)項(xiàng)目不同階段的依賴(lài)。 并且還簡(jiǎn)化maven的配置命令

        3、多項(xiàng)目管理

        實(shí)際使用中,往往需要管理的都不是單單一個(gè)項(xiàng)目,maven使用依賴(lài),繼承,組成的概念,在父模塊指定自己的子模塊,并且準(zhǔn)備一些各個(gè)子模塊公用的資源,如插件,配置信息等等。將打包的模塊與實(shí)現(xiàn)具體功能的模塊分開(kāi)的做法來(lái)管理多個(gè)項(xiàng)目。Gradle在這一方面做得更加清楚,劃分更明確,學(xué)習(xí)gradle的多項(xiàng)目管理也很容易,在eclipse中安裝完gradle插件之后,新建一個(gè)Gradle工程,選擇flat-java-multiproject,生成的工程就是多項(xiàng)目管理一個(gè)示例。

        Gradle通過(guò)settings.gradle文件來(lái)指定工程的子項(xiàng)目,在構(gòu)建的初始化階段(Initialization),Gradle會(huì)根據(jù)settings.gradle 文件來(lái)判斷有哪些子項(xiàng)目被include到了構(gòu)建中,并為每一個(gè)子項(xiàng)目初始化一個(gè)Project對(duì)象,在構(gòu)建腳本中通過(guò)project(‘:sub-project-name’)來(lái)引用子項(xiàng)目對(duì)應(yīng)的Project對(duì)象。關(guān)于多項(xiàng)目配置有非常多,因此就簡(jiǎn)述一下常用的配置共享以及配置獨(dú)享。

        延伸閱讀1:Gradle生命周期

        初始化階段: 解析setting.gradle文件配置階段:解析所有的projects對(duì)象中的task,主要解析各個(gè)project下的build.gradle文件執(zhí)行階段:執(zhí)行project下具體的的task及其依賴(lài)task
        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請(qǐng)您保持通訊暢通,專(zhuān)屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        Mysql怎么把圖片轉(zhuǎn)換的base64以字符串的類(lèi)型存入數(shù)據(jù)庫(kù)?

        一、Mysql怎么把圖片轉(zhuǎn)換的base64以字符串的類(lèi)型存入數(shù)據(jù)庫(kù)MySQL沒(méi)有內(nèi)置功能可以實(shí)現(xiàn)此功能,但可以使用以下步驟實(shí)現(xiàn):1. 使用PHP或其他編程語(yǔ)...詳情>>

        2023-10-13 08:05:09
        為什么mysql having的條件表達(dá)式可以直接使用select后的別名?

        一、為什么mysql having的條件表達(dá)式可以直接使用select后的別名SQL語(yǔ)句的語(yǔ)法順序:FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> D...詳情>>

        2023-10-13 08:02:25
        css為什么要放在head標(biāo)簽中?

        一、考慮加載順序和頁(yè)面渲染當(dāng)瀏覽器加載一個(gè)網(wǎng)頁(yè)時(shí),它會(huì)逐行解析HTML文檔,從上到下構(gòu)建文檔對(duì)象模型(DOM)。DOM樹(shù)的構(gòu)建過(guò)程是逐步進(jìn)行的,...詳情>>

        2023-10-13 07:37:19
        在數(shù)據(jù)庫(kù)查詢(xún)的底層實(shí)現(xiàn)上SQL Server和MySQL的區(qū)別是什么?

        一、在數(shù)據(jù)庫(kù)查詢(xún)的底層實(shí)現(xiàn)上SQL Server和MySQL的區(qū)別1.MySQL是技術(shù)外殼架構(gòu) + 插件方式存儲(chǔ)引擎的方式,mysql復(fù)制語(yǔ)法解析,SQL優(yōu)化等,然后...詳情>>

        2023-10-13 07:33:43
        開(kāi)發(fā)APP需要哪些第三方費(fèi)用?

        1、服務(wù)器費(fèi)用如果你的應(yīng)用需要一個(gè)服務(wù)器來(lái)存儲(chǔ)和處理數(shù)據(jù),你需要支付服務(wù)器費(fèi)用。服務(wù)器費(fèi)用通常是每月收費(fèi)的,而且價(jià)格因服務(wù)提供商和服務(wù)...詳情>>

        2023-10-13 06:42:42
        快速通道
        广安市| 淳化县| 余干县| 惠水县| 神木县| 比如县| 德惠市| 顺义区| 根河市| 佛冈县| 若尔盖县| 汾西县| 婺源县| 额敏县| 长武县| 贵南县| 洛阳市| 屏东县| 扎鲁特旗| 莱阳市| 景东| 平江县| 云阳县| 砀山县| 巩留县| 尼勒克县| 温泉县| 吉林省| 昌吉市| 岫岩| 安远县| 纳雍县| 广平县| 安丘市| 阿克陶县| 都安| 白水县| 报价| 家居| 苍溪县| 新密市|