Ant系列二:◎Ant的使用 - buildfile文件简介
来源:互联网 发布:java pageoffice痕迹 编辑:程序博客网 时间:2024/06/11 22:03
buildfile是一个xml文档,默认命名为build.xml,在Ant的buildfile中,我们可以设定属性[property]、任务[task],每个buildfile中可以设定多个任务[task],这些任务可以是编译源码、生成Doc文档、程序测试等;通常会将这些任务组织为一个目标[target]。
看一个简单的build.xml,大概了解一下
<project name="addressbook" default="compile" basedir=".">
<!-- ===================== Property Definitions =========================== -->
<property name="tomcat.home" value="C:/jakarta-tomcat" />
<property name="app.home" value="." />
<property name="src.home" value="${app.home}/src"/>
<property name="lib.home" value="${app.home}/WEB-INF/lib"/>
<property name="classes.home" value="${app.home}/WEB-INF/classes"/>
<!-- ==================== "compile" Target ============================= -->
<target name="compile" >
<javac srcdir="${src.home}" destdir="${classes.home}" debug="yes" >
<classpath refid="compile.classpath"/>
</javac>
</target>
</project>
<!-- ===================== Property Definitions =========================== -->
<property name="tomcat.home" value="C:/jakarta-tomcat" />
<property name="app.home" value="." />
<property name="src.home" value="${app.home}/src"/>
<property name="lib.home" value="${app.home}/WEB-INF/lib"/>
<property name="classes.home" value="${app.home}/WEB-INF/classes"/>
<!-- ==================== "compile" Target ============================= -->
<target name="compile" >
<javac srcdir="${src.home}" destdir="${classes.home}" debug="yes" >
<classpath refid="compile.classpath"/>
</javac>
</target>
</project>
可以看到build.xml中,project作为根元素(每个buildfile中都会有一个project),然后是定义了两个属性以及一个target。
project元素和target元素的属性,可以看下面的表。
标签属性描述必需的projectname项目名称Nodefault没有指定target时,缺省使用的targetYesbasedir作为计算其它路径的基路径。该属性可以被basedir property覆盖,当覆盖时,该属性被忽略。如果属性和basedir property都没有设定,就使用buildfile文件的父目录Notargetnametarget的名字Yesdepends用逗号隔开的target名字列表,设定些属性,就意味着本target将依赖于depends设定的targetNoif执行target所需设定的属性名Nounless执行target所需要清除设定的属性名Nodescription关于target的描述No
在使用
D:\>Ant
执行时,会先进入到"complie"目标(上面的Ant没有指定target,所以会使用project的default值),编译源码(javac task)提示:我们可以在ant后面指定想要执行的target,缺省情况下会使用默认的(即:project元素default属性设定的target)。
通常,要运行一个程序,首先得要编译它的源码,生成可执行文件,然后才运行这个可执行文件。 可以看到这是由两个任务组成,而且运行可执行文件任务依赖编译源码任务。Ant的buildfile中可以定义多个target,同时一个target的执行可以依赖于另一个target,表描这种依赖关系可以通过target元素的depends属性,depends可以设定多个target(以逗号间隔),如:
<target name="run" depends="mkdir,complie">
<!--
运行程序
-->
</target>
"run"目标依赖"mkdir"和"complie"目标,也就是运行程序之前,要先建立相关文档目录,编译源码生成可执行文件。<!--
运行程序
-->
</target>
depends属性设定的依赖是按左到右的顺序执行,执行命令Ant run,会先执行"mkdir"目标,执行完后,再到"complie",最后才执行"run"目标。
<property>元素,主要是设置一些常用的属性,每个属性都会有一个名称(name),以后再做详解。
- Ant系列二:◎Ant的使用 - buildfile文件简介
- ◎Ant的使用 - buildfile
- ANT Buildfile快速参考
- Ant-buildfile结构解析
- ant的高级使用,ant命令详解,ant打包,ant编译后打包去掉jar文件
- ant使用简介
- ant使用简介
- ant使用简介
- ant使用简介
- Ant使用简介
- ANT使用简介
- ant使用简介
- Ant使用简介
- ant 中使用ant-Plugin插件进行文件的copy
- ant使用(二)
- Ant笔记(二)Ant使用
- 自动构建工具Ant的使用(二)
- [ANT] -------Ant简介
- 处理空值
- 【工作精华】注意group by
- tomcat6.0配置mysql数据库连接池
- 【D-U-N-S 号申请最新流程】(心得)
- POJ 1087 A Plug for UNIX
- Ant系列二:◎Ant的使用 - buildfile文件简介
- 已编译查询
- 数据结构二叉树的编程基本问题
- mysql防止sql注入
- VS2010 MFC保存和加载界面状态
- MP和OMP算法
- 如何解决亚稳态(三)
- (Jquery解决篇) Ajax异步请求 (Eval函数)问题
- 杭电 2016