![](/img/trans.png)
[英]Groovy/Ant: Zipping two files in a Groovy-loop in an ant Task
[英]Groovy ant task: Specifiying additional groovy files
在我们的ANT构建文件中,有时我们称为Groovy脚本
<groovy src="${groovy.script.dir}/DoIt.groovy"/>
有没有一种方法可以指定一个或多个其他Groovy文件? 我们的用例是,我们单独定义了一些常量,这些常量应在多个脚本中使用。
我们是否必须将您的脚本编译为.class文件以便按预期使用它们,还是有一种更时髦的方式来实现我们的目标?
在过去,使用Groovy 1.8.1遇到了同样的问题。 我在文档中找不到如何在同一个<groovy>
任务中使用多个脚本文件(另请参阅ant <script>
任务的文档)。 使用多个任务对我来说都不起作用,因为在它们之间重置了上下文。
我还没有升级到Groovy 2.xy,因为我使用的并不多。 下面我说明了1.8.1的可能解决方法; 也许它仍然有效。
<property name="home" location="/Users/coyote/mytest/ant/src"/>
<property name="gscript1" location="${home}/my/own/pack/foo.groovy"/>
<property name="gscript2" location="${home}/my/own/pack/bar.groovy"/>
<groovy>
evaluate( new File(properties.'gscript1') );
evaluate( new File(properties.'gscript2') );
</groovy>
evaluate()
可以是一个String或一个Script文件,根据当前文档的API文档,它会在其上执行动态评估。 我想,这些就是<groovy>
任务的绑定。
我不确定我是否理解您的用例,但是使用此模型,您当然可以先定义常量。 硬编码,作为属性+代码,或在常规脚本文件+评估中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.