Ant学习(1)

来源:互联网 发布:阿里云服务器数据迁移 编辑:程序博客网 时间:2024/04/27 23:54

一 ANT是什么?

Ant是一种基于Java的Build工具,它的作用相当于make,用来编译/运行/测试java程序 。

二 不什么用ANT?

1. 基于Java的实现。具有良好的跨平台性,同时可以通过增加新的Java类来扩展Ant的功能,而无需去了解不同平台上不同的脚本语言。

2.基于XML的配置文件。Ant以XML树来描述Target/Task的关系,文件结构清晰、易读易写,并且利用XML对格式的控制来避免由于配置文件的错误造成的Build操作失败。

三 搭建ANT运行环境

1 JAVA运行环境(这个就不说了)
2 Ant下载.地址是 http://ant.apache.org/bindownload.cgi,下载最新版,这个无需安装,直接解压。
3 设置ANT环境变量。假设你的解压目录为:C:/ANT。

SET ANT_HOME=C:/ANT//注意是Ant的安装目录,不是bin子目录
SET PATH=%PATH%;%ANT_HOME%/bin;



在配置环境变量之前,请确认已经正确设置了JAVA_HOME系统变量。输入ant命令,看到如下输出说明已成功安装了Ant工具:

Buildfile: build.xml does not exist!
Build failed



提示信息表明在当前目录不存在build.xml配置文件,但这本身已经说明Ant成功运行了。

四 编写一个build.xml

以下是一个简单的示例,来在D盘建个目录Hello,以及在目录Hello下再建个目录World(推荐使用XMLSPY来编辑)
<?xml version="1.0" encoding="UTF-8"?>
<project name="HelloWorld" default="World" basedir=".">
 <target name="Hello">
  <mkdir dir="D:/Hello"/>
 </target>
 <target name="World" depends="Hello">
  <mkdir dir="D:/Hello/World"/>
 </target>
</project>

来看一下这个文件的内容,它描述了以下信息:工程的名字为HelloWorld,default="World"说明从target 名为“World”开始执行,它有两个target ,每个target 都有一个name属性,用来标识这个target ,应具有唯一性,depends属性说明了依赖关系,如depends="Hello"就是告诉ANT,只有在”Hello“这个target 完成后才能执行“World”,每个target 都有个Task,对于ANT支持的Task类型可以查看它的帮助文档。

在命令行输入命令:ant,然后运行。
E:/work/[Net]/project/MobileBuilder/Ant>ant -v
Buildfile: test.xml

Hello:

World:
    [mkdir] Created dir: D:/Hello/World

BUILD SUCCESSFUL
Total time: 0 seconds

如果配置文件名不是build.xml,比如是test.xml,指定参数为-f,可以查看ANT指令的帮助。
E:/work/[Net]/project/MobileBuilder/Ant>ant -f test.xml

以上只是入门,更多的功能需要慢慢挖掘,呵呵