ant - 属性设置为 false,但目标仍然执行

标签 ant

这是一个简单的 Ant 构建文件:

<?xml version="1.0" encoding="UTF-8"?>
<project name="Project" default="build" basedir=".">
    <property name="compressAssets" value="false"/>

    <target name="build" depends="compress-assets"/>
    <target name="compress-assets" if="compressAssets">
        <echo message="executed"/>
    </target>
</project>
compressAssets设置为 false ,那怎么来的compress-assets每次都执行目标?请注意 if目标上的属性。

最佳答案

if不检查属性的值,它检查属性是否已设置。

来自 documentation :

<target name="build-module-A" if="module-A-present"/>

[...] if the module-A-present property is set (to any value, e.g. false), the target will be run.

关于ant - 属性设置为 false,但目标仍然执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2719723/

相关文章:

java - 在ant中删除一个文件

android ant build 在 ant release 命令上失败

jakarta-ee - NetBean 项目构建期间缺少 j2ee.server.home

ant - 在 Jenkins 中增加 Findbugs 的 maxHeap arg

android - 来自单一源代码的多个 Android 应用程序包 .apk 文件

java - Ivy 的 url 解析器是否支持传递检索?

ant - Gradle 在完成 ant 调用后离开 java 进程

java - Ant 需要 travis 服务器上的 junit.jar

ant - antrun 插件使用的是哪个版本的 ANT

android - 由于主项目的复杂库项目依赖性,Jenkins-Server 上的自动化 Android UI 测试失败