Gradle:根据配置文件加载属性文件

时间:2014-09-04 20:15:58

标签: gradle

我想编写一个gradle构建脚本,它可以在不同的环境中工作(开发,实时)。 在每个环境中,我必须加载不同的属性集(目标目录,数据库等)。

是否有依赖于环境或配置文件读取属性文件的gradle方法?

3 个答案:

答案 0 :(得分:6)

您可以查看Gradle Properties Plugin

包含插件:

plugins {
  id 'net.saliman.properties' version '1.4.2'
}

创建属性文件:

gradle-dev.properties

gradle-prod.properties

调用gradle:

gradle myTask -PenvironmentName=dev
gradle myTask -PenvironmentName=prod

答案 1 :(得分:3)

另请查看graven的equivalent maven的个人资料。

答案 2 :(得分:1)

我遇到了同样的问题,但我使用spring并将其配置为从类路径中读取属性:application.properties

在这种情况下,您可以使用java插件将其添加到gradle.build

if (project.hasProperty('env')) {
    println "Target environment: $env"
    sourceSets.main.resources.srcDir "src/main/environment/$env"
}

这适用于基于环境的不同文件夹

因此,根据环境添加资源' dev'你应该有' src / main / environment / dev'文件夹(带属性文件),并调用gradle:gradle myTask -Penv = dev

相关问题