Gradle Plugin 了解

Gradle Plugin

雖然不常用 起碼要看懂

  • resources/META-INF/gradle-plugins 這個(gè)文件夾結(jié)構(gòu)是強(qiáng)制要求的,否則不能識(shí)別成插件。

    implementation-class=com.tencent.matrix.plugin.MatrixPlugin

  • 在Gradle插件開發(fā)中,所有的插件都要繼承org.gradle.api.Plugin接口,并且需要重寫void apply(Project project) 方法,這個(gè)方法將會(huì)傳入使用這個(gè)插件的 project 的實(shí)例,這是一個(gè)重要的 context。

  • image-20181226112314229.png

create的第一個(gè)參數(shù)matrix是我們自定義配置的DSL名字,第二個(gè)參數(shù)是參數(shù)類的名字

通過matrix這個(gè)DSL這個(gè)名字,我們可以任意的改變參數(shù)類中相應(yīng)字段的值。這樣就帶來了很大的便利。

  • Gradle腳本的執(zhí)行分為三個(gè)過程:

    初始化 :分析有哪些module將要被構(gòu)建,為每個(gè)module創(chuàng)建對(duì)應(yīng)的 project實(shí)例。這個(gè)時(shí)候settings.gradle文件會(huì)被解析。

    配置:處理所有的模塊的 build 腳本,處理依賴,屬性等。這個(gè)時(shí)候每個(gè)模塊的build.gradle文件會(huì)被解析并配置,這個(gè)時(shí)候會(huì)構(gòu)建整個(gè)task的鏈表(這里的鏈表僅僅指存在依賴關(guān)系的task的集合,不是數(shù)據(jù)結(jié)構(gòu)的鏈表)。

    執(zhí)行:根據(jù)task鏈表來執(zhí)行某一個(gè)特定的task,這個(gè)task所依賴的其他task都將會(huì)被提前執(zhí)行.

  • image-20181226112735974.png

配置完了以后,有一個(gè)重要的回調(diào)project.afterEvaluate,它表示所有的模塊都已經(jīng)配置完了,可以準(zhǔn)備執(zhí)行task了;

  • Gradle Transform是Android官方提供給開發(fā)者在項(xiàng)目構(gòu)建階段即由class到dex轉(zhuǎn)換期間修改class文件的一套api。目前比較經(jīng)典的應(yīng)用是字節(jié)碼插樁、代碼注入技術(shù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 說明 本文主要介紹和Gradle關(guān)系密切、相對(duì)不容易理解的配置,偏重概念介紹。部分內(nèi)容是Android特有的(例如...
    搬磚的小明閱讀 16,145評(píng)論 1 62
  • 這篇文章講給大家?guī)韌radle打包系列中的高級(jí)用法-自己動(dòng)手編寫gradle插件。我們平常在做安卓開發(fā)時(shí),都會(huì)在...
    呆萌狗和求疵喵閱讀 16,329評(píng)論 22 80
  • 在 Android Studio 構(gòu)建的項(xiàng)目中,基于 Gradle 進(jìn)行項(xiàng)目的構(gòu)建,同時(shí)使用 Android DS...
    Ant_way閱讀 7,584評(píng)論 0 16
  • Gradle 是一款構(gòu)建系統(tǒng)工具,它的 DSL 基于 Groovy 實(shí)現(xiàn)。Gradle 構(gòu)建的大部分功能都是通過插...
    任教主來也閱讀 3,249評(píng)論 3 6
  • 后來有過喜歡 有過悸動(dòng) 有過紅著臉 也有過緊張到不知所措 卻再也沒有過那般單純美好的歡喜出現(xiàn)在心底
    致簡sunshine單純閱讀 227評(píng)論 0 0

友情鏈接更多精彩內(nèi)容