在ant中,我需要创建一个名为“current_build”的文件,其中唯一的内容(以纯文本格式)是目录的全名:
所以我有这个:
<echo file="${trainer.dir}/current_build">${trainer.dir}</echo>
在我的build.properties中,我有一个相对路径集:
trainer.dir=../trainer
在current_build文件中,我希望它是整个路径......如: c:\ workspace \ project \ trainer
我该怎么做?现在,它只是将 ../ trainer 打印到文件
答案 0 :(得分:1)
使用location
元素/任务的property
属性设置属性:这会将值(如果它是相对的)扩展为相对于顶部指定的basedir
的完整路径-level project
元素:
<project name="test" basedir="." default="test">
<property name="trainer.dir" location="foo"/>
<target name="test">
<mkdir dir="${trainer.dir}"/>
<echo file="${trainer.dir}/current_build">${trainer.dir}</echo>
</target>
</project>
如果值来自构建属性文件,请使用另一个属性来捕获其完整路径名:
<project name="test" basedir="." default="test">
<property file="build.properties"/>
<property name="trainer.fulldir" location="${trainer.dir}"/>
<target name="test">
<mkdir dir="${trainer.fulldir}"/>
<echo file="${trainer.fulldir}/current_build">${trainer.fulldir}</echo>
</target>
</project>