Gradle--项目范围设置额外属性

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jhl122/article/details/74171966

定义额外属性的方式介绍三种:

  • ext代码块
  • gradle.properties文件
  • -P命令行参数
1,ext代码块

就是在工程的build.gradle文件中通过ext代码块来设置属性,比如可以是compileSdkVersion或者buildToolsVersion等等 任意属性

ext{
        kotlin_version = '1.1.2-4'
        minSdkVersion = 16
    }

该段代码是的模块层的构建文件可以使用 rootProject来获取属性:

android{
 minSdkVersion rootProject.ext.minSdkVersion
}

一些依赖总会使用这种方法,这样方便管理版本

2,gradle.properties文件

在gradle.properties文件中添加属性

targetSdkVersions = 25

在moudle层调用:

  targetSdkVersion targetSdkVersions

3,通过-P命令行参数

这个就涉及到gradle里面的任务创建和执行,在moudle的build.gradle中创建任务,任务不在android代码块里面单独存在。

task printProperties<<{

    if (project.hasProperty('cmd')){
        print cmd
    }
}

然后在gradle.properties文件中设置属性:

cmd = hellow command line
最后执行任务printProperties,可以通过代码执行,也可以手动在studio右侧gradle中找到任务printProperties点击执行,然后在Gradle Console窗口就可以看到输出的结果:
:kotlin:printProperties
hellow command line

注意:

工程的构建文件和模块的构建文件同时定义属性,如果模块定义了一个在工程中已经存在的属性,那么新属性将覆盖原来的属性。

猜你喜欢

转载自blog.csdn.net/jhl122/article/details/74171966
今日推荐