`
windy2coast
  • 浏览: 55794 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

什么是ANT

阅读更多
ANT是一个基于Java的自动化脚本引擎,脚本格式为XML。除了做Java编译相关任务外,ANT还可以通过插件实现很多应用的调用。
1)ANT的基本概念:
2)ANT的安装:解包,设置路径
3)ANT的使用:最好的学习只不过是一个简单实用的例子起步……

ANT的基本概念:Java的Makefile

当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。

每个ant脚本(缺省叫build.xml)中设置了一系列任务(target):比如对于一个一般的项目可能需要有以下任务。

任务1:usage 打印本脚本的帮助信息(缺省)
任务2:clean <-- init 清空初始化环境
任务3:javadoc <-- build <-- init 生成JAVADOC
任务4:jar <-- build <-- init 生成JAR
任务5:all <-- jar + javadoc <-- build <-- init 完成以上所有任务:jar javadoc

而多个任务之间往往又包含了一定了依赖关系:比如把整个应用打包任务(jar)的这个依赖于编译任务(build),而编译任务又依赖于整个环境初始化任务(init)等。

注:我看到很多项目的ant脚本中的命名基本上都是一致的,比如:编译一般叫build或者compile;打包一般叫jar或war;生成文档一般命名为javadoc或javadocs;执行全部任务all。在每个任务的中,ANT会根据配置调用一些外部应用并配以相应参数执行。虽然ANT可调用的外部应用种类非常丰富,但其实最常用的就2,3个:比如javac javadoc jar等。

ANT的安装

解包后在系统可执行路径中加入指向ant的bin的路径就可以了,比如可以在GNU/Linux上把以下配置加入/etc/profile中:
export ANT_HOME=/home/ant
export JAVA_HOME=/usr/java/j2sdk1.4.1
export PATH=$PATH:$JAVA_HOME/bin:$ANT_HOME/bin

这样执行ant 后,如果不指定配置文件ant会缺省找build.xml这个配置文件,并根据配置文件执行任务,缺省的任务设置可以指向最常用的任务,比如:build,或指向打印帮助信息:usage,告诉用户有那些脚本选项可以使用。

ANT的使用

最好的学习过程就是看懂那些open source项目中的build.xml脚本,然后根据自己的需要简化成一个更简单的,ANT和APACHE上很多非常工程派的项目:简单易用,而且适应性非常强,因为这些项目的建立往往来源于开发人员日常最直接的需求。
分享到:
评论
1 楼 feargod 2011-10-29  
嗯,谢谢你的介绍,在做openfire源码的部署,不明白为什么要那么麻烦,ant又是什么,现在有点明白了,谢谢。

相关推荐

    Ant工具的使用及Ant介绍

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    Ant 资源 Ant 资源

    ##### 1.1 什么是Ant? - **Ant**是一个用Java编写的构建工具,其主要作用是帮助开发者自动执行重复性的任务,如编译Java源代码、创建jar文件、执行单元测试等。 - 它采用XML格式来定义构建过程,使得构建脚本易于...

    ant1.8.2(组件)

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    ANT教程的介绍

    **什么是Ant?** Ant 是一个基于Java的构建工具,它允许开发者编写XML脚本来描述项目的构建过程。这些脚本定义了一系列的任务,如编译源代码、创建JAR文件、执行测试、部署应用程序等。由于Ant是用Java实现的,因此...

    使用ant 元件所用的 jar 包

    首先,让我们理解什么是Ant。Apache Ant是一个由Apache软件基金会开发的Java库和命令行工具,其任务是驱动构建过程。它的核心概念是基于XML的build.xml文件,其中包含了构建项目的所有指令。这些指令定义了一系列的...

    ANT使用指南

    #### 什么是ANT? Ant是一款开源的Java构建工具,它与传统的Make工具相似,但专为Java应用程序设计。Ant采用XML来描述构建过程,这使得跨平台的构建过程更加容易管理和维护。Ant的核心优势在于其灵活性、易用性和...

    antTask.jar.zip

    首先,让我们了解什么是Ant。Apache Ant是一种由Apache软件基金会开发的Java库和命令行工具,它的设计目标是驱动构建过程。Ant使用XML来描述构建过程和依赖关系,因此,它是一个平台无关的构建工具,可以在任何操作...

    ant中build.xml文档写法

    Ant 的概念可能有些读者并不知道什么是 Ant 以及如何使用它,但只要使用通过 Linux 系统的读者,应该知道 make 这个命令。当编译 Linux 内核及一些软件的源程序时,经常要用这个命令。Make 命令其实就是一个项目管理...

    ant-launcher-1.7.0.jar.zip

    首先,让我们了解什么是Ant。Apache Ant是一个基于Java的构建工具,由Apache Software Foundation维护。它通过XML定义的构建文件(通常命名为build.xml)来描述项目的构建过程,包括编译、打包、测试等步骤。Ant的...

    ant ant ant ant

    "Ant ant ant antant ant ant antant ant ant ant" 这个描述可能是在强调Ant在项目构建过程中的重复性和不可或缺性,暗示着它在工程中的频繁使用和核心地位。 Ant的设计理念是“一切都是XML”,它通过XML格式的构建...

    ant使用手册ANT使用指南

    ##### 2.1 什么是Ant? Apache Ant是一个基于Java的构建工具,其名称源自“Another Neat Tool”(另一个整洁的工具)的首字母缩写。构建工具的主要作用是将源代码和相关的资源文件转换成可执行文件或可部署的包。...

    ant使用教程

    1. **什么是Ant** - Ant是一款用于自动化构建过程的软件工具,最初由Apache Software Foundation开发。它主要用于编译、测试和部署Java应用程序,支持跨平台使用,因为它是用Java编写的。 2. **构建的概念** - ...

    ant使用基础啊

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    Ant入门与进阶

    **1.2 什么是Ant** Apache Ant是一款用于自动化软件构建过程的工具,尤其适用于Java环境下的项目。它通过一系列预定义的任务来执行构建过程中的常见操作,如编译源代码、运行测试、打包应用程序等。Ant的构建脚本...

    Ant入门与进阶.pdf

    ##### 1.2 什么是Ant? - **定义**: Apache Ant是一种用于软件开发中的构建工具,特别是在Java环境中广泛使用。 - **默认配置文件**: Ant的默认配置文件是`build.xml`。 - **作用**: 它负责将软件开发的不同阶段(如...

    ant介绍Ant是什么

    Ant 是一个基于 Java 的构建工具,它主要用于自动化Java应用程序的构建过程,比如编译、打包、测试等。Ant 的设计灵感来源于经典的构建工具 make,但它避免了 make 的一些局限性,比如跨平台的问题和 Makefile 的...

    ant ant下载与配置

    ant ant下载 ant配置ant ant下载 ant配置ant ant下载 ant配置

    apache-ant-1.6.5-bin.zip_ ant 1.6.5_ant_ant-1.6.5_apache ant win

    Apache Ant 是一个开源的构建工具,广泛用于Java项目构建,由Apache软件基金会开发。这个"apache-ant-1.6.5-bin.zip"文件是Ant的1.6.5版本的二进制发行版,适合在Windows操作系统上使用。Ant是基于Java的,它的主要...

Global site tag (gtag.js) - Google Analytics