- Ant简介
- Apache Ant功能特性
- Apache Ant安装
- Apache Ant入门程序(Hello World)
- Apache Ant构建文件-project标签
- Apache Ant目标-target标签
- Apache Ant任务-task标签
- Apache Ant属性
- Apache Ant令牌过滤器
- Apache Ant命令行参数
- Apache Ant If和Unless用法
- Apache Ant类型
- Apache Ant自定义组件
- Apache Ant监听器和记录器
- Apache Ant IDE集成
- Apache Ant InputHandler接口
- Ant之外的Apache Ant任务
- Apache Ant参数处理器
- Apache Ant API
- Apache Ant Jar示例
- Ant任务
Apache Ant If和Unless用法
Ant if
和unless
都是<target>
元素(tasks)的属性。 这些属性用于控制任务是否运行的任务。
除了target
之外,它还可以与<junit>
元素一起使用。
在早期版本和Ant 1.7.1中,这些属性仅是属性名称。 如果定义了属性,则即使值为false
也会运行。
例如,即使在传递false
之后也无法停止执行。
文件:build.xml -
<project name="java-ant project" default="run"> <target name="compile"> <available property="file.exists" file="some-file"/> <echo>File is compiled</echo> </target> <target name="run" depends="compile" if="file.exists"> <echo>File is executed</echo> </target> </project>
输出:
无参数:没有命令行参数运行它。 只需输入ant
到终端,但首先找到项目位置,它将显示空输出。
使用参数:现在只传递参数:false
。
Ant -Dfile.exists = false
得到以下结果:
E:\worksp\ant\AntProject>Ant -Dfile.exists = false Buildfile: E:\worksp\ant\AntProject\build.xml compile: [echo] File is compiled run: [echo] File is executed BUILD SUCCESSFUL Total time: 0 seconds
使用参数:现在只传递参数:true
。
Ant -Dfile.exists = true
执行上面示例代码,得到以下结果:
E:\worksp\ant\AntProject>Ant -Dfile.exists = true Buildfile: E:\worksp\ant\AntProject\build.xml compile: [echo] File is compiled run: [echo] File is executed BUILD SUCCESSFUL Total time: 0 seconds
从Ant 1.8.0开始,可以使用属性扩展,只有当value
为true
时才允许执行。在新版本中,它提供了更大的灵活性,现在可以从命令行覆盖条件值。请参阅下面的示例。
文件:build.xml
<project name="java-ant project" default="run"> <target name="compile" unless="file.exists"> <available property="file.exists" file="some-file"/> </target> <target name="run" depends="compile" if="${file.exists}"> <echo>File is executed</echo> </target> </project>
输出
无参数:在没有命令行参数的情况下运行它。 只需输入ant
到终端,但首先找到项目的位置,它将显示空输出。
使用参数:现在传递参数,但只使用false
。
Ant -Dfile.exists = false
没有输出,因为这次没有执行。
使用参数:现在传递参数,但只使用true
。 现在它显示输出,因为if
被评估。
Ant -Dfile.exists = true
E:\worksp\ant\AntProject>Ant -Dfile.exists = true Buildfile: E:\worksp\ant\AntProject\build.xml compile: run: [echo] File is executed BUILD SUCCESSFUL Total time: 0 seconds
上一篇:Apache Ant命令行参数
下一篇:Apache Ant类型