DEVLOG 9.23 Gradle筆記(2)Gradle插件
Gradle這塊的學(xué)習(xí)很不容易理清頭緒,所以我想通過學(xué)習(xí)定義子一個自定義插件的方式學(xué)習(xí)一下~
以下的內(nèi)容是根據(jù)官網(wǎng)的文檔學(xué)習(xí)的:
https://docs.gradle.org/current/userguide/custom_plugins.html

# 打包插件的方式
通常而言我們能在很多教程中看到的打包插件的方式有三種
Build Script
這種就是在我們寫的build.gradle中寫一個插件,這個插件會自動被編譯和包含到我們當(dāng)前的腳本所在的classpath。但是這個插件不能在這個腳本之外的地方使用
buildSrc project
Standalone project
自定義Gradle插件
定義一個簡單的插件。我們的插件需要執(zhí)行一個簡單的Task
我們寫的插件需要implements Plugin,并且傳入一個Project類型參數(shù)
調(diào)用當(dāng)前Project實例的apply方法
因為這里接受的是一個泛型參數(shù),所以如果接受的是Settings類,就可以對Settings類做一些操作。
可配置的自定義插件
可以配置的插件是通過extensions對象實現(xiàn)的。
因此對于這個簡單的Task,我們可以通過構(gòu)建一個Extension,這個Extension中的message對象是一個Property(mutable property),然后就可以在執(zhí)行Task的給Plugin傳入值。
可以通過Extension的DSL初始化Extension
標簽: