- ant可以利用pathconvert 任务,将内嵌的资源集合转换为某一平台的路径方式。
- pathconvert可以通过属性property设置一个属性名称,将转换后的路径保存到属性中。
例如,下面的代码:
<project name="demo_project">
<path id="tools.path">
<pathelement location="${java.home}/lib/tools.jar"/>
</path>
<pathconvert property="pathform" refid="tools.path"></pathconvert>
<echo>path is:${pathform}</echo>
</project>
执行以后的输出:
- 从Ant 1.10.13版本开始,pathconvert可以通过属性dest设置一个目的地资源(ant默认将该资源解释为文件),将转换后的路径保存到资源中。
- pathconvert可以通过属性targetos设置目标架构,值必须下面之一:unix、windows、netware、tandem、os/2。这个属性其实是根据目标架构同时设置pathsep 和 dirsep属性的一个快捷方式。例如下面的代码:
<project name="demo_project">
<path id="tools.path">
<pathelement location="${java.home}/lib/tools.jar"/>
</path>
<pathconvert property="pathform" refid="tools.path" targetos="unix"></pathconvert>
<echo>path is:${pathform}</echo>
</project>
执行后输出:
- pathconvert必须设置属性refid(除非包含内嵌的path结构),用于指明要转换什么,是指向
<path>、<fileset>、<dirset>、或者<filelist>
的一个引用。例如:
<project name="demo_project">
<path id="tools.path">
<pathelement location="${java.home}/lib/tools.jar"/>
</path>
<pathconvert property="pathform" refid="tools.path"></pathconvert>
<echo>path is:${pathform}</echo>
</project>