如何从 src/main/resources 目录中的文件定义 gradle 构建脚本环境变量?

How do I define a gradle build script environment variable from a file in my src/main/resources directory?

我在 Windows 7 上使用 Gradle 2.7。我有一个属性文件 "src/main/resources/liquibase.properties",我想在我的 build.gradle 脚本中引用它的属性.所以例如在我的属性文件中我有

url=jdbc:mysql://localhost:3306/my_db
username=myuser
password=mypass

我想像这样在我的脚本中引用这些...

liquibase {
  activities {
    main {
      changeLogFile 'src/main/resources/db.changelog-1.0.xml'
      url '${url}'
      username '${username}'
      password '${password}'
    }
  }
}

此外,我想通过运行 "gradle build" 来完成此操作,而无需在命令行上指定任何其他参数。我该怎么做?

谢谢,-戴夫

您可以加​​载属性文件,然后从中获取值...这是一个示例

liquibase {
  activities {
    main {
      File propsFile = new File("${project.rootDir}/src/main/resources/liquibase.properties")
      Properties properties = new Properties()
      properties.load(new FileInputStream(propsFile))
      changeLogFile 'src/main/resources/db.changelog-1.0.xml'
      url properties['url']
      username properties['username']
      password properties['password']
    }
  }
}