Ant 将属性转换为路径
我有一个逗号分隔值的属性,例如a、b、c 我想把它分开,创建不同文件集的路径;例如Ant 将属性转换为路径,ant,Ant,我有一个逗号分隔值的属性,例如a、b、c 我想把它分开,创建不同文件集的路径;例如 <path id="compile.path"> <fileset dir="..\a\lib\"/> <fileset dir="..\b\lib\"/> <fileset dir="..\c\lib\"/> </path> 这可能吗?我该怎么做?我对蚂蚁不是很熟悉。感谢您的帮助。您必须使用自定义脚本或非标准Ant任务。看看如何开始。
<path id="compile.path">
<fileset dir="..\a\lib\"/>
<fileset dir="..\b\lib\"/>
<fileset dir="..\c\lib\"/>
</path>
这可能吗?我该怎么做?我对蚂蚁不是很熟悉。感谢您的帮助。您必须使用自定义脚本或非标准Ant任务。看看如何开始。另一种编写for循环的方法,基于分隔符迭代原始属性,并从循环中为每个令牌调用目标
<foreach list="${property}" delimiter="${line.separator}" target="mytarget"
param="token" />
然后调用目标:
<target name="mytarget">
<echo>${token}</echo>
</target>
${token}
另一种方法是使用ant contrib提供的属性选择器
<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
将产生结果
ABC、DEF、GHI、JKL
这不符合我的要求,因为它使用一个或多个属性创建另一个属性。我需要一个路径元素。我需要创建一个路径元素。我对foreach很熟悉,但我不能用它来构建path元素。我希望情况不会是这样。谢谢你给我指明了正确的方向。