如何从中央存储加载gradle属性

时间:2017-04-26 12:34:53

标签: gradle

我有多个使用gradle构建的项目。所有项目基本上都使用相同的构建逻辑和许多常见属性,只有项目之间的某些变量不同。

我想集中所有常用部分并在每个gradle项目中“包含”,因此当一些常用属性发生变化时,我不必触及每个gradle项目。我也希望能够覆盖特殊情况的属性。

这样做有什么好处?

1 个答案:

答案 0 :(得分:0)

  

这样做有什么好处?

简单回答:Initialization scripts

属性是设置特定于用户/系统的最佳方式(使用Gradle用户主目录中的gradle.properties文件)或项目特定的(使用项目目录中的gradle.properties文件)参数。如果要跨开发系统(本地计算机,CI,...)甚至多个用户(不同凭据)设置一致的环境,则可以开发一个或多个初始化脚本。

您可以将它们放置在Gradle用户主目录(这样它们将被所有Gradle安装使用)或Gradle安装目录(对于一个特定的已安装Gradle版本)。

可以通过StartParameter对象从初始化脚本设置项目和系统属性:

startParameter.with {
    projectProperties['key'] = 'value'
    systemPropertiesArgs['key'] = 'value'
}

projectPropertiessystemPropertiesArgs都是简单的地图。