学习自定义Gradle插件
2020-04-03 本文已影响0人
卖炭少年炭治郎
自定义 Gradle 插件
- 首先新建一个项目
- 新建一个module模块,删除无关文件,只需保留main和build.gradle文件即可
- gradle文件中删除之前默认所有配置,引入如下配置
//管理仓库的插件
apply plugin: 'maven'
//groovy插件
apply plugin:'groovy'
dependencies {
compile gradleApi()
compile localGroovy()
}
- 在main目录下新建groovy和main文件夹
- 在groovy文件夹下建包,写对应的插件
package com.okay.plugin
import org.gradle.api.Plugin
import org.gradle.api.Project
public class LifeCyclePlugin implements Plugin<Project>{
@Override
void apply(Project project) {
System.out.println("== LifeCyclePlugin Plugin gradle plugin ==")
}
}
- 在gradle中配置插件版本和仓库信息
group = 'com.okay.plugin'
version = '1.0.0'
uploadArchives{
repositories{
mavenDeployer{
//本地maven地址
repository(url : uri('../asm_lifecycle_repo'))
}
}
}
7.在plugin/src/main目录下新建目录resources/META-INF/gradle-plguins,然后在此目录下新建一个文件zyl.asm.lifecycle.properties。(zyl.asm.lifecycle是插件名称)
implementation-class= com.okay.plugin.LifeCyclePlugin
8.生成插件
现在可以在 Android Studio 的右边栏找到 Gradle 中Tasks/upload下找到并点击 uploadArchives,执行 plugin 的部署任务。就会生成asm_lifecycle_repo文件夹
测试插件
- 在app的build.gradle文件中添加插件配置
apply plugin: 'com.android.application'
apply plugin: 'zyl.asm.lifecycle'
buildscript {
repositories {
//自定义插件的maven地址
maven {url '../asm_lifecycle_repo'}
}
dependencies {
//加载自定义插件 group+module+version
classpath 'com.okay.plugin:asm_lifecycle_pulgin:1.0.0'
}
}
2.在studio的Terminal控制台输入./gradlew clean assembledebug命令,控制台输出
> Configure project :app
== LifeCyclePlugin Plugin gradle plugin ==
BUILD SUCCESSFUL in 22s
打印了我们的日志,说明插件生效了。