您的位置:首页 > 其它

[Groovy]Groovy with Ant Task

2015-06-01 08:59 344 查看
平时经常会用Ant来写一写脚本,但最近跨入到Groovy的时代,试着做一些改变。Groovy里集成了AntBuilder能非常方便的调用到Ant的对象模型。

现考察如下

1. Groovy里定义的属性如何能在Ant的Task里调用?

def testMsg = "hello world"
def ant = new AntBuilder()
ant.echo(message:"${testMsg}")


2. 如何在Groovy里访问Ant里定义的属性?

def ant = new AntBuilder()
ant.property(name:"p1",value:"v1")
ant.echo(message:'${p1}') // output: v1, 注意只是单引号,双引号在Groovy里有点特别
println ant.project.properties.p1 // output: v1


请注意Ant的Property是immutable(不可变的),所以在Groovy里修改一定定义过的Ant属性是不起作用的

def ant = new AntBuilder()
ant.property(name:"p1",value:"v1")
ant.echo(message:'${p1}') // output: v1, 注意只是单引号,双引号在Groovy里有点特别
ant.project.properties.p1 = "v2" // output: v1
ant.echo(message:'${p1}') // still output: v1


3. 用Groovy创建一个Ant的Property

def ant = new AntBuilder()
ant.project.setProperty('p1','v1')
ant.echo(message:'${p1}') // outoput: v1


以后可以考虑用Groovy来完成类似Ant所需实现的功能,应该会是十分方便。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: