0

我有一个 foreach 标签来执行特定目录中的所有文件。作为文件集的一部分,我排除了两个文件。

但不管排除文件,参数仍然将这两个文件传递给目标“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>
4

1 回答 1

1

你不想要 <excludesfile >,它需要一个包含排除模式的文件,你想要

 <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

于 2012-12-06T07:48:00.557 回答