• [Groovy]Groovy with Ant Task


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

    现考察如下

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

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

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

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

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

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

    3. 用Groovy创建一个Ant的Property

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

    以后可以考虑用Groovy来完成类似Ant所需实现的功能,应该会是十分方便。

  • 相关阅读:
    语文成语的积累
    关于翻译
    关于文常
    语文小说
    语文 散文阅读
    矩佬的博客
    字词
    语文病句
    地理
    寒假某cg的数学卷子....
  • 原文地址:https://www.cnblogs.com/buhaiqing/p/4543190.html
Copyright © 2020-2023  润新知