Android如何自定义Gradle插件

Android-如何自定义gradle插件

自定义gradle插件可以实现定制自己的构建流程,以达到复用目的;

##1. 自定义插件方式
自定义插件有三种方式

  1. 添加脚步

    在你的app项目的build.gradle中直接使用groovy脚步语言编写插件
    这样方式好处是插件能自动变异且被包含到构建脚步中,你无需做任何处理;缺点是插件到逻辑都放到都build.gradle中去了,增加了脚步的复杂度且无法复用

  2. 添加buildSrc工程

    在根目录添加buildSrc子Module,这种方式比前一种好些,将插件的代码统一放到buildSrc工程中去了,但还是做不到别的工程能够使用它

  3. 单独新建一个工程

    这种方式最优,将插件集中在一个单独的工程中,且发布到gradle后,别的工程能够轻松复用它

##2. 自定义插件实现

###2.1 第一种------添加脚步

在你的主工程app module的build.gradle中直接添加脚步

Example:


class HelloConfigExtension {
    String msg = 'Hello gradle plugin'
}

class HelloPlugin implements Plugin<Project> {
   
   void apply(Project project) {
		
		// Add the 'hello' extension object
       def extension = project.extensions.create('hello', HelloConfigExtension)
       project.task('hello') {
           doLast {
               println extension.msg
           }
       }
   }
}

// Apply the plugin
apply plugin: HelloPlugin

//Config the extension
hello{
	msg = 'hello from gradle'
}

在控制台输入 ./gradlew -q hello

> gradle -q hello
hello from gradle

上述命令表明需要执行一个hello任务 -q表示除去打印日志(错误日志除外);因为我们在插件中定义了一个hello任务,这个任务就是打印从gradle传入的msg参数;

这样一个简单的插件就实现了,当然完全可以根据自己的业务需求实现自己的插件

##2.2 第二种------添加buildSrc Module

在根工程中添加手工添加一个buildSrc 目录结构如下

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值