我正在使用Gradle脚本来自动部署三个Android环境。
这个想法是定义一组属性,这些属性将用于保存每个环境中的所有数据。

[DEV, QA & Live]  {
           buildFolder ="..."
           envName     = "..."
           excludeFiles=  "**/..." }

然后,对于每个操作复制代码,编辑文件...我将只需要迭代每个环境。

基本上,我的问题是我无法设法找到创建此集合的方法。

有人可以解释持有一组属性(property)的最佳方法吗?
I've already tried with:
project.ext.dev= {
 envName     = "live"
 buildFolder = "releaseLive"
 excludeFiles= ['**/..' ]
 }

project.ext.qa = {
 envName     = "live"
 buildFolder = "releaseLive"
 excludeFiles= ['**/..' ]
 }

project.ext.live = {...}

最佳答案

我不确定您要做什么,但是听起来像您想使用 map 。请记住,Gradle脚本只是简单的。

因此,类似:

project.ext.dev = [
  envName:"DEV",
  buildFolder: "releaseLive",
 ]

 project.ext.qa = [
  envName:"QA",
  buildFolder: "releaseLive",
 ]


task printProps << {
  println project.dev.envName
  println project.qa.envName
}

http://groovy.codehaus.org/Collections

07-24 14:52