使用AndroidStudio创建自定义gradle插件并被引用实战例子
生活随笔
收集整理的這篇文章主要介紹了
使用AndroidStudio创建自定义gradle插件并被引用实战例子
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
項(xiàng)目中引入自定義Gradle plugin一般有三種方法:?
直接寫在 build.gradle中.
plugin源碼放到rootProjectDir/buildSrc/src/main/groovy目錄下
plugin打包成jar, 發(fā)布到maven倉(cāng)庫(kù), 然后項(xiàng)目通過Build Script依賴jar的形式引入
下面介紹的是第3種自定義Gradle插件的方式.
1.創(chuàng)建AndroidLibrary
2.建立plugin的目錄結(jié)構(gòu)
把之前目錄下的文件全部刪掉,只保留build.gradle文件
建立groovy文件夾,在下邊建立com.xx.xxx包結(jié)構(gòu)
3.創(chuàng)建MyPlugin文件
import org.gradle.api.Plugin import org.gradle.api.Projectpublic class MyPlugin implements Plugin<Project> {void apply(Project project) {System.out.println("========================");System.out.println("hello gradle plugin!");System.out.println("========================");} }
4.在resources下建立\META-INF\gradle-plugins\com.XXX.myplugin.properties
implementation-class=com.lj.plugin.MyPlugin
5.在build.gradle文件中進(jìn)行配置
apply plugin: 'groovy' //添加maven plugin, 用于發(fā)布我們的jar apply plugin: 'maven' dependencies {compile gradleApi()compile localGroovy()compile 'org.codehaus.groovy:groovy-all:2.3.6' compile 'org.javassist:javassist:3.20.0-GA' }repositories {mavenCentral() }//設(shè)置maven deployer uploadArchives {repositories {mavenDeployer {//設(shè)置插件的GAV參數(shù) pom.groupId = 'com.lj.plugin' //pom.artifactId = 'cooker-plugin' pom.version = 1.0 //文件發(fā)布到下面目錄 repository(url: uri('D:/release'))}} }
6.生成插件包
在D:\release\com\lj\plugin\myplugin\1.0目錄下看到
7.在要引用的app的build.gradle中添加
就是com.XXX.myplugin.properties的文件名去掉properties
apply plugin: 'com.xxxx.myplugin'
8.在整個(gè)項(xiàng)目的build.gradle中添加如下內(nèi)容
buildscript {repositories {jcenter()maven {//cooker-plugin 所在的倉(cāng)庫(kù) //這里是發(fā)布在本地文件夾了 url uri('D:/release')}}dependencies {classpath 'com.android.tools.build:gradle:2.2.2' classpath 'com.lj.plugin:myplugin:1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }allprojects {repositories {jcenter()} }
9.build項(xiàng)目在message窗口看到輸出內(nèi)容
、
總結(jié)
以上是生活随笔為你收集整理的使用AndroidStudio创建自定义gradle插件并被引用实战例子的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Rxjava+Retrofit+Mvp的
- 下一篇: 使用photoview+viewpage