一、build.gradle
1.可以使用同级或上级目录下*.properties(一般都是在gradle.properties)中所有参数
2.路径表示方式:
file:/// 表示的是完整路径, rootDir表示项目根目录,MAVEN_UPLOAD_REPO_URL是常量地址,自己配置在.properties中
def uploadURL = "file:///" + rootDir + MAVEN_UPLOAD_REPO_URL
3.可以在其它位置写xx.gradle文件,语法和build.gradle一样,然后让build.gradle通过apply from:‘ ’引用
1)根目录的build.gradle中主要放一些需要引用的仓库和依赖的第三方插件,也可以加入一些公共常量
例如:
这些即可以放在根目录的build.gradle中也可以单独写一个.gradle文件,然后根目录的build.gradle引用,使用如下:
compileSdkVersion rootProject.ext.androidCompileSdkVersion
ext {
//Android公共配置,所有bulid.gradle中版本都使用这些,保证项目中各个库的版本都一致,避免一些版本不同导致的编译问题
androidCompileSdkVersion = 27
androidBuildToolsVersion = "27.0.3"
androidMinSdkVersion = 19
androidTargetSdkVersion = 23
appcompatV7Version = "25.3.1"
// 第三方引用的版本号,项目中所有使用到的直接使用这个版本号,保证项目中第三方工具版本统一
eventbusVersion = "3.0.0"
buglyVersion = "2.1.5"
leakCanaryVersion = "1.5.2"
}
2)主工程和库文件的build.gradle,也可以抽出公共的功能(主要是一些编译的task命令)放在一个单独的xx.gradle文件中,然后引用
其中的功能可以看另一篇文章https://blog.csdn.net/lhy24680/article/details/91959539
二、gradle.properties
1. *.properties中配置公共常量参数,所有build.gradle都可以使用里面的常量
../是相对位置,即当前文件夹的上级目录
MAVEN_PUSH_PATH=../common/buildsystem/maven_push.gradle
// 完整路径,中间的E:/xxx 不知道能否有其它相对路径的方式表达,这种只适合自己,别人代码放的目录不一样就需要修改这里
LOCAL_REPO_URL=file:///E:/xxx/AndroidRepo
---------------------以上内容仅为自己理解,如有错误,还请指正---------------------