我有一个foreach标记来执行特定目录中的所有文件。作为文件集的一部分,我排除了两个文件。
但无论排除文件,param仍会将两个文件传递给目标“runpART”
我不想为排除的文件调用目标。
如果有任何办法,请告诉我。以下似乎不起作用
<foreach target="runART" param="p.schedulerFile" inheritall="true" inheritrefs="true">
<path>
<fileset dir="${p.dir}" casesensitive="no">
<!--<include name="**\*.xml"/>-->
<excludesfile name="${pART.dir}\CodeCoverage_NSR.xml"/>
<excludesfile name="${pART.dir}\CodeCoverageRegression_HLR.xml"/>
</fileset>
</path>
</foreach>
答案 0 :(得分:1)
你不希望&lt; excludesfile&gt;,它需要一个包含排除模式的文件,你想要
<exclude name="CodeCoverage_NSR.xml">
<exclude name="CodeCoverageRegression_HLR.xml">
现在,假设你想要$ {p.dir} == $ {pART.dir}。 排除文件集中的模式必须相对于文件集的根目录(此处,其dir =“$ {p.dir}”)。 有关详细信息,请参阅:http://ant.apache.org/manual/Types/fileset.html