如何在Ant中反转路径的元素?
我在Ant中有一个路径集合,我需要以相反的顺序遍历它。 我将AntContrib的如何在Ant中反转路径的元素?,ant,Ant,我在Ant中有一个路径集合,我需要以相反的顺序遍历它。 我将AntContrib的用于循环,如下所示: <for param="foo"> <path refid="bar" /> <sequential> ... </sequantial> </for> ... 我需要以相反的顺序遍历条的元素。我无法改变最初创建路径的方式。我总是可以用Java编写自定义Ant任务,但我的构建目前运行时没有任何自定义任务,对于这样一
用于循环,如下所示:
<for param="foo">
<path refid="bar" />
<sequential> ... </sequantial>
</for>
...
我需要以相反的顺序遍历条
的元素。我无法改变最初创建路径的方式。我总是可以用Java编写自定义Ant任务,但我的构建目前运行时没有任何自定义任务,对于这样一个看似简单的任务,我宁愿避免这样做
Ant JavaScript能够做到这一点吗?(如果是,怎么做?)
任何帮助都将不胜感激 我认为“纯蚂蚁”解决方案可能有点扭曲,但您可以按照您的建议使用
这将设置一个属性baz
,该属性包含引用id为bar
的路径的反向
<script language="javascript"><![CDATA[
project.setProperty( "baz", project.getReference( "bar" )
.toString().split( ":" ).reverse( ).join( ":" ) );
]]></script>
希望能够适应您的精确需求。创建一个变量(“Ant Contrib中的var”类型),以相反的顺序存储path元素
然后,使用for循环将路径作为嵌套路径,在条件中使用“equals”检查变量是否为空
之后,如果是,只需将for循环参数的值复制到变量中,否则将for循环参数的值复制到变量中,后跟分隔符和变量的值(即进行串联)
最后,您可以通过使用“list”属性和“delimiter”属性在for循环中使用创建的变量
你可以从我自己的源代码中看出我的意思。工作起来很有魅力!我所要做的就是将for循环从遍历路径转换为遍历结果属性中的分隔列表。谢谢