Ant资源存在检查

时间:2013-05-06 21:26:43

标签: java ant resources conditional-statements

我在使用ant测试文件存在问题。我想检查目标test中是否存在文件,如果不存在,我想要在目标download中下载文件。但是download目标将始终执行(如果文件存在与否)。任何人都能证明出了什么问题吗?

<!-- Test lib files if exist -->
<target name="test">
    <condition property="is.resource.exists" value="true" else="false">
        <and>
            <resourceexists>
                <file file="${lib}/jdom-2.0.5.jar" />
            </resourceexists>
            <resourceexists>
                <file file="${lib}/miglayout-4.0-swing.jar" />
            </resourceexists>
        </and>
    </condition>
</target>

<!-- Download lib files if not exist -->
<target name="download" if="is.resource.exists" depends="test">
    <exec dir="${lib}" executable="${lib}/get-libs.sh" />
</target>

1 个答案:

答案 0 :(得分:1)

如果<target>属性中的属性存在,则会执行if属性if。同样,如果<target>属性中的属性不存在,则会执行具有unless属性的unless。属性的价值无关紧要:真,假,金橘等等。

if="is.resource.exists"替换为unless="is.resource.exists",你应该做得很好。