Eclipse Ant构建工具

原文地址:http://blog.csdn.net/x03570227/article/details/2505245

本文进行了整理,选取了最常用的部分。。  


一、Project

<project>
属性                  描述                        是否必须
default              要运行的默认目标         Y
name                项目名                          N
basedir             基目录                          N
description       项目描述                       N

例如:

<project name=”Hello” default=”compile” basedir=”.” Description=”Hello,World build file”>

</project>
‘.’代表的是build.xml所在的目录
可以嵌套的标签<description><target><property>


二、Targets

<targets>
属性            描述                                    是否必须
name          目标名                                       Y
depends     依赖列表                                   N
if                 指定属性被设置时执行              N
unless         当指定属性未被设置时执行       N
description  目标描述                                   N


例如:

<target name=”compile” depends=”init” description =”Compile all sources”>

</targets>

depends意思是在执行这个部分之前要执行的部分。


三、Tasks


<buildnumber> 从文件中读取构建的计数器每构建一次计数器加一写回文件

属性           描述                                          是否必须
file             读取的属性默认build.number         N

例如:

<buildnumber file=”buildnum.txt” />


<copy>拷贝一个文件使用file属性,拷贝一组文件使用<fileset>元素嵌套
属性                             描述                                               是否必须
file                            源文件名                                  Y,除非使用fileset
tofile                         目标文件名                               Y,除非使用 todir
todir                          目标目录                                  Y,如果多于1个文件
overwrite                   覆盖较新的目标文件                   N,默认false
includeEmptyDirs      拷贝空目录                                 N,默认true
failonerror                 文件未发现停止构建                   N,默认true
verbose                    列出拷贝文件                              N,默认false

例如:

《copy file=”log4j.properties” todir=”bin” /》

<delete>删除一个文件使用file属性,一组文件用《fileset》元素嵌套或目录用directory属性
属性                             描述                                               是否必须
file                               要删除的文件                    Y,除非是dir或fileset
dir                               要删除的目录                       Y,除非file fileset
verbose                      删除文件列表                           N,默认false
failonerror                   有错误停在                              N,默认true
includeEmptyDirs        删除的目录当fileset指定          N,默认false

例如:

<delete file=”ant.log” />
<delete dir=”temp” />


<jar>将一组文件压缩为一个jar文件
属性                描述                  是否必须
destfile           Jar文件名                Y
basedir           要打包的目录          N
includes          包含的文件             N
excludes         排除的文件             N

例如:

<jar destfile=”dist/persistence.jar” basedir=”bin” includes=”org/ecli/persis/**,org/ecli/astr/**” excludes=”*Text*.class” />
<jar destfile="dist/persistence.jar">
<include name="**/*.class"/>
<exclude name="**/*Test*"/>
</jar>


<java> 可以嵌套的元素>classpath>用来替代classpath属性
属性                 描述                                        是否必须
classname       要运行的类名                     Y,除非指定jar
jar                    执行的jar                      Y,除非指定clsssname
classpath         使用的类路径                               N
fork                  是否使用较新的JVM            N,默认false
failonerror        错误发生是否停止               N,默认false
output              输出文件                                      N
append            追加或覆盖默认文件                    N

例如:
<java classname="HelloWorld"/>
<java classname="Add" classpath="${basedir}/bin">
<arg value="100"/>
<arg value="200"/>
</java>


<javac> 编译java文件 可以嵌套的元素<classpath><jar>
属性                             描述                               是否必须
srcdir                           源目录                     Y,除非src使用
destdir                         输出目录                             N
includes                       包含的编译文件  N,默认包含所有java文件
excludes                      忽略的文件                          N
classpath                     使用的类路径                      N
debug                          是否包含调试信息      N,默认false
optimize                       使用优化                    N,默认false
verbose                       提供verbose输出                 N
failonerror                   错误发生是否停止       N,默认true

例如:

<javac srcdir="src" destdir="bin"/>
<javac srcdir="${basedir}" destdir="bin"
includes="org/eclipseguide/persistence/**"
excludes="**/*Test*">
<classpath>
<pathelement path="${java.class.path}"/>
<pathelement location=
"D:/log4j/jakarta-log4j-1.2.8/dist/lib/log4j-1.2.8.jar"/>
</classpath>
</javac>

<mkdir>创建目录
属性     描述                  是否必须
dir        要建立的目录          Y
<mkdir dir="dist/doc"/>


四、Properties
可以把属性写在一个文件中,用《property file=”build.properties”》指定并读取
# build.properties
junit_home=D:/junit/junit3.8.1
log4j_home=D:/log4j/jakarta-log4j-1.2.8
可以这样使用:
<property file="build.properties"/>


五、fileset
《fileset》中的通配符:
‘?’ 任何一个字符
‘*’0个或多个字符
‘**’0个或多个目录


属性             描述             是否必须
dir                目录                  Y
includes       包含文件           N
excludes      排除文件           N

例如:
<fileset dir="src/org/eclipseguide/astronomy"
includes="**/*.java"
excludes="**/*Test*"/>
<fileset dir="src/org/eclipseguide/astronomy/">
<include name="**/*.java"/>
<exclude name="**/*Test*"/>
</fileset>


六、classpath
属性             描述                       是否必须
path             路径                            N
location        独立文件或目录          N

例如:
<classpath path="bin"/>
<classpath>
<pathelement path="${java.class.path}"/>
<pathelement location="${junit_path}"/>
<pathelement location="${log4j_path}"/>
</classpath>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值