如果要在Ant中运行Groovy脚本,可以像这样使用script task:..
<script language="groovy">
//foo
</script>
..或groovy task之类的:
<groovy>
//foo
</groovy>
两种方式都需要下载Groovy库。我找到了一个看起来很有希望的Ant配置,在这个答案中自动执行此操作:Execute my groovy script with ant or maven
现在我的问题:
两个Ant任务中的哪一个用于运行Groovy脚本? script
或groovy
?
另外,如果Ant中包含一个支持groovy的脚本任务,那么“附加”常规任务的目的是什么?
另外,我想引用我在此处找到的博文:http://jbetancourt.blogspot.co.at/2012/03/run-groovy-from-ants-script-task.html
当然,为什么在'groovy'任务可用时你会使用'script'任务?你不会。
有人同意这篇文章的作者吗?如果是这样 - 你能解释它背后的想法吗?
答案 0 :(得分:4)
+1(顺便说一句,他的博客http://josefbetancourt.wordpress.com/和http://octodecillion.com/值得一读)
为了多种目的使用groovy,在ant我专门使用groovy任务,因为他的灵活语法提供了对ant api的简单访问,请考虑这个例子:
<project>
<taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy"/>
<property name="foo" value="bar"/>
<script language="groovy">
project.setProperty 'foo', 'baz'
echo = project.createTask 'echo'
echo.setMessage 'Howdie :-)'
echo.execute()
</script>
<echo>1. $${foo} => ${foo}</echo>
<groovy>
properties.'foo' = 'baaz'
ant.echo 'Howdie :-)'
</groovy>
<echo>2. $${foo} => ${foo}</echo>
</project>
你更喜欢哪个?好的,通常不是回声。 ...你会使用print或println,它只是为了演示对ant api的访问。