编写最基本的Gradle插件

创建

新建Android Module删掉除build.gradle以为的其他文件,并创建如下结构目录

image.png

其中plugin_component.properties的文件名即为我们在Module中apply 引入插件的名字

plugin_component.properties

image.png

implementation-class 指向插件入口文件 千万注意不要有多余的空格 否则会找不到相关类(犯过错 找好久)

ComBuild

image.png

ComBuild继承Plugin类,至于具体要实现的功能就得看你的需求了。
好了到此,Gradle插件的简单创建到此就结束了,下面看下发布到仓库。

发布

发布之前我先看下plugin_component的build.gradle配置文件

image.png

这是最基本的配置,我下面只简单的介绍下几个变量
group:我们在root build.gradle中关联插件时需要用到
version:插件版本号
uploadArchives task:发布插件到本地仓库
好了终于到了要具体怎么发布到本地仓库了,你可以通过以下2中方式
1、gradlew plugin_component:uploadArchives
2、 点击task列表中相应的task


image.png

插件引入

1、root build.gradle 配置


image.png

2、module build.gradle 配置


image.png

插件名即为上文plugin_component.properties的文件名

运行验证

image.png

当执行sync project的时候 控制台输出了我们在插件编写的信息

Debug

这里再说说一句关于如何进行插件debug,请按照以下步骤进行
1、点击Remoter


image.png

具体配置如下 端口号默认5005 可以不做修改


image.png

2、在命令行在输入如下代码

./gradlew assembleDebug -Dorg.gradle.daemon=false -Dorg.gradle.debug=true
或者可以先我一样创建.bat文件 并在文件在加上
./gradlew assembleDebug -Dorg.gradle.daemon=false -Dorg.gradle.debug=true
其实效果是一样,只是这样比较方便,不用每次都输入命令了

其中assembleDebug 可以是任何打包的命令,此时系统已经开启了调试进程。

3、打断点点击调试


image.png

切换到我们刚创建的任务,点击红色圈中的按钮就会自动执行assembleDebug task,最后给大家看一眼调试的断点


image.png

总结

好了,关于编写最简单的gradle插件和调试到这就结束了,当然项目中不可能这么简单,我们可以根据自己的业务需求去编写相应的gradle插件,至于gradle插件能干什么,我在这就不多说了,也不是本文的重点,你可以自己去查找相关的资料。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容