如何在Ant中有条件地包含zipfileset

如何在Ant中有条件地包含zipfileset,ant,fileset,Ant,Fileset,在Antzip任务中,如何有条件地包含zipfileset 我试过这个: <zip destfile="/path/bar.zip"> <zipfileset src="foo.zip" if="include.foo.zip"> </zipfileset> ... </zip> ... 但是zipfileset不支持if您应该在ant类路径中包含ant contrib jar并使用任务定义 <project n

在Ant
zip
任务中,如何有条件地包含
zipfileset

我试过这个:

<zip destfile="/path/bar.zip">
    <zipfileset src="foo.zip" if="include.foo.zip">
    </zipfileset>
    ...
</zip>

...

但是
zipfileset
不支持
if

您应该在ant类路径中包含ant contrib jar并使用任务定义

<project name="MyProject" basedir="." default="build" xmlns:if="ant:if" xmlns:unless="ant:unless">
        <taskdef resource="net/sf/antcontrib/antcontrib.properties" />

        <target name="build">
            <echo file="salt">it's essential</echo>
            <echo file="chili">Not always</echo>

            <var name="canIncludeChili" value="false" />

            <zip destfile="meal.zip">
                <zipfileset prefix="meal" file="salt" />
                <zipfileset prefix="meal" file="chili" if:true="${canIncludeChili}" />
            </zip>
        </target>

    </project>

这是必要的
不总是