ant的condition任务
1、istrue isfalse:断言 真 假
- <project name="testCondition">
- <target name="test">
- <condition property="scondition">
- <istrue value="true"/>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
2、逻辑运算
2.1、not 逻辑非
- <project name="testCondition" default="test">
- <target name="test">
- <condition property="scondition">
- <not>
- <istrue value="true"/>
- </not>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
2.2、and 逻辑与
- <project name="testCondition" default="test">
- <target name="test">
- <condition property="scondition">
- <and>
- <istrue value="true"/>
- <istrue value="false"/>
- </and>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
2.3、or 逻辑或 xor异或 (语法上与and类似)
3、available 是否可用
- <project name="testCondition" default="test">
- <path id="all.test.classes">
- <pathelement location="bin"/>
- </path>
- <target name="test">
- <condition property="scondition">
- <!--在指定的classpath路径下是否存在资源 TestTest.class-->
- <available resource="TestTest.class">
- <classpath refid="all.test.classes" />
- </available>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
4、isset 指定属性是否存在
- <project name="testCondition" default="test">
- <!--属性也能够通过ant參数-D来设置-->
- <property name="name" value="this is name"/>
- <target name="test">
- <condition property="scondition">
- <!--假设属性name不存在则返回false-->
- <isset property="name"/>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
5、equals 是否相等
- <project name="testCondition">
- <!--属性也能够通过ant參数-D来设置-->
- <property name="name" value="this is name"/>
- <target name="test">
- <condition property="scondition">
- <!--假设arg1的值与arg2的值相等返回true,否则为false-->
- <equals arg1="${name}" arg2="this is name"/>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
6、filesmatch 比較文件
- <project name="testCondition">
- <target name="test">
- <condition property="scondition">
- <!--假设file1所代表的文件与file2所代表的文件相等返回true,否则为false-->
- <filesmatch file1="testfile1.txt" file2="testfile2.txt"/>
- </condition>
- <antcall target="isTrue"></antcall>
- <antcall target="isFalse"></antcall>
- </target>
- <target name="isTrue" if="scondition">
- <echo>is ture</echo>
- </target>
- <target name="isFalse" unless="scondition">
- <echo>is false</echo>
- </target>
- </project>
ant的condition任务的更多相关文章
- 从源码角度深入分析ant
Ant的基本概念 首先是ant的基本概念:Project,Target,Tasks,Properties,Paths 1.Project <project> build.xml文件最顶层的 ...
- 从源码角度深入分析 ant
[转自] http://www.tuicool.com/articles/eQvIRbA Ant的基本概念 首先是ant的基本概念: Project,Target,Tasks,Properties,P ...
- React Native初试:Windows下Andriod环境搭建
最近想写个App,又觉得Native App 太无趣了Web App又没那么成熟然后发现了Facebook在9月发布的React Native比较新奇,所以决定捣鼓看看: React Native为F ...
- ANDROID STUDIO, GRADLE AND NDK INTEGRATION
Originally posted on:http://ph0b.com/android-studio-gradle-and-ndk-integration/ With the recent chan ...
- NDK 开发实例二(添加 Eigen库)
上一篇,我已经阐述了如何创建一个简单的NDK实例: NDK 开发实例一(Android.mk环境配置下) 在上一篇的基础上,我们来添加Eigen库,然后做一个简单实例. Eigen是一个高层次的C + ...
- NetBeans部署项目(Extjs)报错(一)
NetBeans部署项目(Extjs)报错(一) 1.用NetBeans将项目部署到Tomcat中,报错. 具体如下: ant -f D:\\NetBeans\\workspace\\Foundati ...
- Cocos2d-x游戏导出android工程,提取cocos的so文件
Cocos2d-x游戏导出android工程,提取cocos的so文件 原本cocos游戏的android工程编译时,需要将cocos的库文件进行编译,这些文件大部分是cpp文件, 使用ndk ...
- React Native Android入门实战及深入源代码分析系列(2)——React Native源代码编译
本文为老曾原创.转载需注明出处:viewmode=contents">http://blog.csdn.net/minimicall?viewmode=contents 在上一节中,我 ...
- Android 使用OpenCV的三种方式(Android Studio)
http://blog.csdn.net/sbsujjbcy/article/details/49520791 其实最早接触OpenCV是很久很久之前的事了,大概在2013年的5,6月份,当时还是个菜 ...
随机推荐
- PS中矢量形状图层的合并交叉等运算
操作中将用到下图所示的几个按钮 图1.2 减去顶层形状图层为例 1. 上图中,选择矩形工具,以新建图层的形式,新建两个矩形的形状图层,如上右图. PS:可以Shift+A快捷键选中一个形状,然后填 ...
- Android滑动到顶部悬停
无图说卵,先上图 jianshu-top.gif 查阅资料后,发现网上大部分都是用这种方法实现的: 多写一个和需要悬浮的部分一模一样的layout,先把浮动区域的可见性设置为gone.当浮动区域滑动到 ...
- PHP回调函数--call_user_func_array
我这是抄的 感谢 https://www.cnblogs.com/zzl-21086595/p/4547519.html 全局函数的回调 这里的全局函数的意思,是直接使用function定义的函数,它 ...
- css选择器.md
css选择器总结 1.元素选择器 如:*{},body{},p{} ; xml中note{},to{},from{} 2.class与id选择器 如:.class{},#id{} 3.伪类选择器 选择 ...
- ITFriend开发日志20140611
原文链接:http://www.itfriend.cn/user/ITFriend/article/details/100274 1.调整登录页. 把大背景图,改为通用的banner图,节省流量. 登 ...
- Oracle内存管理(之四)
[深入解析--eygle]学习笔记 1.3 SGA管理 SGA指系统全局区(System Global Area),是一块用于载入数据.对象并保存执行状态和数据库控制信息的一块内存区域,在数据库实例启 ...
- Win7长时间使用占用内存高问题记
工作电脑Win7 64位,8G内存,没设置虚拟内存,连续运行几天,中间只是睡眠,今天在试用时总提示内存不足,看任务管理器已经把占用内存比较多的几个进程都结束掉了,但内存占用依旧是80%以上,eclip ...
- P2P网贷第三方托管模式存在5大缺陷,托管机构才是最大赢家
1.注册开户需要2次,用户体验很差劲儿. 理财人和借款人,首先在平台注册,然后还要在第三方托管账户注册. 很多类似的地方,用户体验非常差劲. 比如,密码4个. 平台:登录密码.交易密码 ...
- [NIO]用dawn发送接收HTTP请求
HTTP协议的下层使用的是tcp.所以我们建立一个tcp连接就能发送接收http请求.dawn底层使用了nio.可是经过dawn的封装之后,我们在编写代码的时候,就和使用普通的堵塞式socket一样 ...
- POJ2739_Sum of Consecutive Prime Numbers【筛法求素数】【枚举】
Sum of Consecutive Prime Numbers Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 19350 Ac ...