将属性转换为路径

  • 本文关键字:路径 转换 属性 ant
  • 更新时间 :
  • 英文 :


我有一个逗号分隔值的属性,例如a,b,c

我想把它分开并创建一个不同文件集的路径;例如。

<path id="compile.path">
  <fileset dir="..alib"/>
  <fileset dir="..blib"/>
  <fileset dir="..clib"/>
</path>

这可能吗?我该怎么做?我对蚂蚁不是很熟悉。任何帮助表示赞赏。

您必须使用定制脚本或非标准 Ant 任务。 看看这个SO答案,它解释了如何从属性中获取子字符串以帮助您入门。

另一种方式是编写 for 循环,基于分隔符迭代原始属性,并从循环中为每个标记调用一个目标。

    <foreach list="${property}" delimiter="${line.separator}" target="mytarget" 
param="token" />

然后被调用的目标:

<target name="mytarget">
    <echo>${token}</echo>           
</target>   

另一种方法是使用 ant-contrib 的 PropertySelector

    <property name="package.ABC.name" value="abc pack name" />
    <property name="package.DEF.name" value="def pack name" />
    <property name="package.GHI.name" value="ghi pack name" />
    <property name="package.JKL.name" value="jkl pack name" />
    <propertyselector property="pack.list"
                         delimiter=","
                         match="package.([^.]*).name"
                         select="1"
                         casesensitive="false" />               
would yield the results  
ABC,DEF,GHI,JKL

相关内容

  • 没有找到相关文章