我在使用 ant 测试文件存在时遇到问题。我想检查目标 test
中是否存在文件,如果不存在,我想下载目标 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>
最佳答案
一个<target>
与 if
如果 if
中的属性将执行属性存在。同样,<target>
与 unless
如果 unless
中的属性将执行属性不存在。属性的值是什么并不重要:true、false、kumquat 或其他。
替换 if="is.resource.exists"
与 unless="is.resource.exists"
你应该表现得很好。
关于java - Ant资源存在检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16407564/