ant 命令

ant的构建文件

一. ant 的构建文件:

1. 目录结构:

    antBook

    antBook/src

    antBook/build

    antBook/build/classese

    antBook/build/lib

 

1.  antBook/build.xml

Xml代码

  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3.     <project name="simple Buildfile" default="compile" basedir=".">  
  4.        
  5.         <!-- The directory containing source code-->  
  6.         <property name="src.dir" value="src"/>  
  7.            
  8.         <!-- Temporary build directories -->  
  9.         <property name="build.dir" value="build"/>  
  10.         <property name="build.classes" value="${build.dir}/classes"/>  
  11.         <property name="build.lib" value="${build.dir}/lib"/>  
  12.            
  13.         <!--compile target-->  
  14.         <target name="prepare">  
  15.             <mkdir dir="${build.dir}"/>  
  16.             <mkdir dir="${build.classes}"/>  
  17.             <mkdir dir="${build.lib}"/>  
  18.         </target>  
  19.        
  20.         <target name="clean" description="removes all generated files.">  
  21.             <delete dir="${build.dir}"/>  
  22.         </target>  
  23.            
  24.         <target name="compile" depends="prepare" description="编译文件">  
  25.             <javac srcdir="${src.dir}" destdir="${build.classes}"/>  
  26.         </target>  
  27.            
  28.         <target name="jar" depends="compile" description="压缩成jar">  
  29.             <jar jarfile="${build.lib}/oreilly.jar" basedir="${build.classes}"  
  30.                  excludes="**/*Test.class"/>  
  31.         </target>  
  32.            
  33.         <target name="all" depends="clean,jar" description="cleans,compiles.."/>  
  34.     </project>  

<?xml version="1.0" encoding="utf-8"?>

 

<project name="simple Buildfile" default="compile" basedir=".">

<!-- The directory containing source code-->

<property name="src.dir" value="src"/>

<!-- Temporary build directories -->

<property name="build.dir" value="build"/>

<property name="build.classes" value="${build.dir}/classes"/>

<property name="build.lib" value="${build.dir}/lib"/>

<!--compile target-->

<target name="prepare">

  <mkdir dir="${build.dir}"/>

  <mkdir dir="${build.classes}"/>

  <mkdir dir="${build.lib}"/>

</target>

<target name="clean" description="removes all generated files.">

  <delete dir="${build.dir}"/>

</target>

<target name="compile" depends="prepare" description="编译文件">

  <javac srcdir="${src.dir}" destdir="${build.classes}"/>

</target>

<target name="jar" depends="compile" description="压缩成jar">

  <jar jarfile="${build.lib}/oreilly.jar" basedir="${build.classes}"

   excludes="**/*Test.class"/>

</target>

<target name="all" depends="clean,jar" description="cleans,compiles.."/>

</project>

 

2. ant运行时会显示每个所执行到的目标的名字,ant 先执行了prepare,其后才执行compile,这是因为compile是默认目标,而它对prepare目标存在一个依赖关系。

 

3. ant运行指定的构建文件时,命令如下:

    ant  -buildfile  *.xml    

    ant  -buildfile  *.xml clean

 

4. 可以运行一条命令执行多个目标:

    ant clean jar

 

5.可以输入ant all 来完成清理和重新构建, 因为all依赖于clean和 jar. 而jar进一步依赖compile,compile则依赖于prepare, 这样一条简单的命令ant all 既可以按适当的顺序完成所以目标。

 

6. 获得描述信息:

   包含description属性的为主目标,没有描述的则为子目标。

从工程的基目录键入: ant -projecthelp 可获得如下输出信息:

 

Main targets:

 all      cleans,compiles..
 clean    removes all generated files.
 compile  编译文件
 jar      压缩成jar"
Default target: compile

 

7. 获得ant 命令行参数:  键入ant -help

 

-help: 

    显示描述ant 命令及其选项的帮助信息。

 

-projecthelp:

     显示description属性中的文本信息

 

-version : 显示ant版本信息

 

-quiet :

   抑制并非由构建文件中的echo任务所产生的大多数消息。

 

-verbose:

   显示构建过程中每个操作的详细信息,此选项与-debug只能选择其一。

 

-debug

   显示ANT和任务开发人员已经标志为调式消息的消息,此选项与-verbose只能选其一。

 

-emacs

   对日志消息进行格式化,使他们能够很容易的由emacs的shell模式所解析; 也就是说,打印任务事件,但并不缩排,在期之前也没有[taskname].

 

-logger classname

   指定一个类来处理ANT 的日志记录,所指定的类必须实现了org.apache.tools.ant.BuildLogger接口。

 

-listener classname

    为ANT 声明一个监听类,并增加到其监听者列表中,在ANT与IDE或者其他JAVA程序集成时,此选项非常有用。

必须将所指定的监听类编写为可以处理ANT的构建消息接发。

 

-buildfile filename

   指定ant需要处理的文件, 默认的构建文件为build.xml

 

-Dproperty=value

    在命令行上定义一个特殊名-值对。

 

-find filename

   指定ant应当处理的构建文件。 与-buildfile选项不同,如果所指定文件在当前目录中未找到,-file就要求ant在其父目录中再进行搜索,这种搜索会继续在其祖目录中进行,直到到达文件系统根目录为止, 在此如果文件还未找到则构建失败。

 

 

8. 构建文件的几点事项:

 

(1. 所有构建文件都要有<project >元素, 而且至少有一个<target>元素。

 

(2. 对于<project >元素的default属性并没有默认值。

 

(3. 构建文件并不一定要命名为build.xml,ant默认搜索该文件。

 

(4. 每个构建文件只有一个<project >元素。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值