gradle plugin开发(二)

Extension

  1. 创建扩展
abstract class MyPluginExtension {

    /**属性1*/
    abstract val data1: Property <String>

    /**属性2*/
    abstract val data2: Property<String>

    var dataString: String? = null

   /**方法1*/
    fun testData(data: String) {
        this.dataString = data
    }

}
override fun apply(project: Project) {
//创建扩展
 val myExt = project.extensions.create("myExtensions",MyPluginExtension::class.java).apply {
                //设置默认值
               data1.convention(“”)
               data2.convention(“”)
               testData("")
  }

    //project评估完成后可以读取值
    project.afterEvaluate { p ->
        println("${myExt.data1},${myExt.data2},${myExt.dataString}")
    }
}
  1. 在gradle中使用extensions
plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
    id 'xxxx.xxx'
}

//使用插件的扩展
myExtensions {
    data1 ="data1"
    data2 ="data2"
    testData "测试1234"
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容