我有如下所示的目录结构和将输入目录中的文件转换为输出目录中的文件的程序。
base directory
+ 001
+ input
+ output
+ 002
+ input
+ ...有许多这些子目录,我正在寻找一种方法来选择那些有一个输入,但没有输出目录。我从https://ant.apache.org/manual/Types/dirset.html中调整了以下内容:
<dirset dir="${project.path}">
<include name="**/input"/>
<present present="srconly" targetdir="${project.path}">
<globmapper from="*/input" to="*/output/marker" />
</present>
</dirset>因此,我根据输入目录的名称选择输入目录,并尝试使用present选择器和globmapper搜索输出目录中的标记文件。srconly应该确保我只选择那些输出目录中没有标记文件的输入目录。不幸的是,这不起作用:我总是把所有输入目录的集合都拿回来,尽管dirset页面说它的作用就像一个<and>选择器容器。你有什么意见建议?非常感谢。
发布于 2015-07-20 15:15:16
显然,答案是“礼物”选择器是区分大小写。我使用的是Windows服务器,而${project.path}的值没有正确地大小写。由于Windows上的大多数其他操作都不区分大小写(包括我以前使用过的所有其他Ant功能),所以我没有遇到任何其他问题。
https://stackoverflow.com/questions/26529660
复制相似问题