Ant_初步认识(001)

Ant是什么

Apache Ant是一个基于java的生成工具
工具的名称是another neat tool

http://ant.apache.org/

配置D:\MyJar\ant\apache-ant-1.8.4\bin目录到path下
配置D:\MyJar\ant\apache-ant-1.8.4目录到ANT_HOME下

Ant的作用
生成工具在软件开发中用来将源代码和其他输入文件转换为可执行文件的形式(也可能转换为可安装的产品映像形式)。随着应用程序的生成过程变得更加复杂,确保在每次生成期间都使用精
确相同的
生成步骤,同时实现尽可能多的自动化,以便及时产生一致的生成版本,这就变得更加重要。

Ant的优势
Ant定义生成文件之间的依赖关系,它使用跨平台的java类。使用Ant,您能够编写单个生成文件,这个生成文件在任何java平台上都一致的操作,因为Ant本身也是使用java语言来实现,这就
是Ant的最大优势。

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

<project default="init">

<target name="init">
  <mkdir dir="helloworld"/>
</target>

</project>


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

<project default="init">

<target name="init">
  <mkdir dir="helloworld/a/b/c/d"/>
</target>

</project>


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

<project default="init">

<target name="init">
  <delete dir="helloworld"/>
</target>

</project>

使用命令ant,默认的是执行build.xml
ant -f build2.xml执行的是build2.xml


Ant生成文件剖析
Ant没有定义它自己的自定义语法,相反的,它的生成文件是用XML编写的。存在一组Ant能够理解的
预定义XML元素,而且还可以定义新的元素来扩展Ant的功能。每个生成文件由单个project元素组成,该元素又包含一个或多个target元素。一个目标target是生成过程中已定义的一个步骤,
它执行任意数量的操作,比如编译一组源文件。并且这些操作本身是由其他专用任务标签执行的。

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

<project default="init">

<target name="init">
  <mkdir dir="welcome"/>
  <mkdir dir="to"/>
  <mkdir dir="learning"/>
  <mkdir dir="java"/>
</target>

</project>

然后这些任务根据需要被分组到各个target元素中。一次生成过程所必须的所有操作可以放入单个
target元素中,但是那样会降低灵活性。将那些操作划分为逻辑生成步骤,每个步骤包含在它自己的target元素中,这样通常更为可取。这样可以执行整体生成过程的单独部分,却不一定要
执行其他部分。
例如,通过仅调用某些目标,您可以编译项目的源代码,却不必创建可安装的项目文件。


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

<project default="second">

<target name="init">
  <mkdir dir="welcome"/>
  <mkdir dir="to"/>
  <mkdir dir="learning"/>
  <mkdir dir="java"/>
</target>

<target name="second" depends="init">
  <mkdir dir="abc"/>
  <mkdir dir="xyz"/>
</target>

</project>

第2个target依赖于第1个target


顶级的project元素需要包含default属性,如果在Ant被调用时没有指定目标,这个属性将指定要执行的目标。
然后需要使用target元素来定义该目标本身。


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

<project default="init">

<target name="init">
  <mkdir dir="helloworld"/>
</target>

<target name="second">
  <mkdir dir="helloworld2"/>
</target>
</project>

ant -f build2.xml second
ant -f build2.xml init second
如果xml文件为build.xml,使用ant second


范例:

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

<project default="second">

<description>
hello
</description>

<target name="init" description="targetone">
  <mkdir dir="welcome"/>
  <mkdir dir="to"/>
  <mkdir dir="learning"/>
  <mkdir dir="java"/>
</target>

<target name="second" depends="init" description="targettwo">
  <delete dir="welcome"/>
  <delete dir="to"/>
  <delete dir="learning"/>
  <delete dir="java"/>
</target>

</project>

description的标签或属性的内容是描述性信息,相当于注释

posted @ 2012-06-06 01:05  雪中飞雁  阅读(156)  评论(0)    收藏  举报