在Ant中的路径中转换../
我有一个蚂蚁构建,里面有这样一行:在Ant中的路径中转换../,ant,Ant,我有一个蚂蚁构建,里面有这样一行: WORKSPACE.dir=${basedir}/./ 然后我有: CORE\u PROJECT.dir=${WORKSPACE.dir}/UUI\u CORE WORKSPACE.dir = ${basedir}/../ 这意味着我最终会得到这样的路径: C:\dev\workspaces\RTC\UUI\u Core\u ANT/。//UUI\u Core WORKSPACE.dir = ${basedir}/../ 这在几乎所有情况下都可以正常工作,
WORKSPACE.dir=${basedir}/./
然后我有:
CORE\u PROJECT.dir=${WORKSPACE.dir}/UUI\u CORE
WORKSPACE.dir = ${basedir}/../
这意味着我最终会得到这样的路径:
C:\dev\workspaces\RTC\UUI\u Core\u ANT/。//UUI\u Core
WORKSPACE.dir = ${basedir}/../
这在几乎所有情况下都可以正常工作,但我正在尝试构建一个要在构建中使用的类列表。目前我有以下代码:
<pathconvert
property="coreClasses"
pathsep=" "
dirsep="."
refid="coreSources">
<map from="C:\dev\workspaces\RTC\UUI_Core\src\" to="" />
<mapper>
<chainedmapper>
<globmapper from="*.mxml" to="*"/>
</chainedmapper>
<chainedmapper>
<globmapper from="*.as" to="*"/>
</chainedmapper>
</mapper>
</pathconvert>
它的任务是删除文件位置并将jsut保留在包结构中。但它不是很灵活。我应该可以在这里使用CORE_PROJECT.dir
那么,我如何转换
C:\dev\workspaces\RTC\UUI\u Core\u ANT/。//UUI\u Core
WORKSPACE.dir = ${basedir}/../
到
C:\dev\workspace\RTC\UUI\u Core
WORKSPACE.dir = ${basedir}/../
这不是有效的Ant语法
要转换。
您应该使用
任务的位置属性,而不是值<代码>位置
将属性值替换为绝对路径。就你而言:
<property name="WORKSPACE.dir" location="${basedir}/.."/>
编辑:在设置类似路径的属性时,我应该添加,始终使用位置
属性