ant 是apache 工程的一个子工程,是一个基于java的build工具。ant类似于make工具,但没有传统的make工具的缺点。传统的make往往只能限制在某一平台上使用,ant本身用java类实现,要构建的工程的配置文件用xml格式描述,可以很方便实现多平台编译,非常适合build大型工程。
1.安装配置ant:
ant 可以从http://ant.apache.org下载,目前最新版本为1.5.2。下载完毕后直接解压缩,目录如下:
ant
+-- bin // contains launcher scripts
|
+-- lib // contains Ant jars plus necessary dependencies
|
+-- docs // contains documentation
| +-- ant2 // a brief description of ant2 requirements
| |
| +-- images // various logos for html documentation
| |
| +-- manual // Ant documentation (a must read )
|
+-- etc
需要设置的环境变量:
ANT_HOME:ant的安装目录
JAVA_HOME:jdk的安装目录
PATH:把%ANT_HOME%\bin目录加到path变量,以便于从命令行下直接运行ant
假定ant装在c:\ant jdk装d:\j2sdk1.4.0
则在命令行下执行以下命令:
set ANT_HOME=c:\ant
set JAVA_HOME=D:\j2sdk1.4.0
set PATH=%PATH%;c:\ant\bin
在win2000命令提示符下工作时,每次都必须进行上面的设置,退出命令提示符后,这些变量的值又会恢复成原来的样子。为了避免这些麻烦,可以在 控制面板\系统\高级\环境变量 中设置。
上述设置完成后,就可以使用ant了。
2.建立工程描述文件build.xml
用ant编译规模较大的工程非常方便,每个工程都对应一个build.xml文件,这个文件包含与这个工程有关的路径信息和任务。下面是一个build.xml的例子:
<project name="logon" basedir="." default="dist">
<property name="dist.name" value="struts_demo"/>
<property name="src" location="src"/>
<property name="build" location="WEB-INF/classes"/>
<property name="dist" location="D:/tomcat/webapps/dist"/>
<!-- Build working classpath -->
<path id="project.class.path">
<pathelement path ="WEB-INF/lib/struts.jar"/>
<pathelement path ="WEB-INF/classes"/>
<pathelement path ="${classpath}"/>
</path>
<target name="init">
<tstamp/>
<!-- Create the build directory structure used by compile -->
<delete dir="${dist}"/>
</target>
<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${build}">
<classpath refid="project.class.path"/>
</javac>
</target>
<!-- Build binary distribution -->
<target name="dist" depends="compile"
description="Create binary distribution">
<mkdir dir="${dist}"/>
<war destfile="${dist}/${dist.name}.war"
webxml="WEB-INF/web.xml">
<lib dir="WEB-INF/lib"/>
<classes dir="WEB-INF/classes"/>
<fileset dir="${basedir}"/>
</war>
</target>
</project>
要构建的工程目录如下:
struts_demo
+--jsp
|
+--src
|
+--WEB-INF
| +--classes
| |
| +--lib
| |
| +--web.xml
|
+--build.xml
每个build.xml文件都包含一个project和至少一个target。target包含任务元素,任务是一段可执行代码,每个任务元素都有一个id属性,以便于在文件中引用。ant有内置任务集可供使用,如上面文件中用到的property、javac和war,分别完成设置属性、编译和打包任务。当然如果需要的话也可以写自己的任务。
build.xml的根元素是progject,它有三个属性name default basedir,其中default是必需的。name指定工程的名字,basedir表示工程的基路径,设置为"."表示build.xml所在的路径。default表示默认的target,运行ant时如果不指定target,则用default指定的target.
property任务用来设置属性,一个工程可以设置很多属性,属性有名字和值,属性设置后可以在后面引用。
<property name="dist.name" value="struts_demo"/>设置一个名字为dist.name的属性,其值为struts_demo,后面使用时用${dist.name}引用,表示字符串struts_demo.
<property name="src" location="src"/>设置一个名字为src的属性,它的值是一个路径,用location设置。如果location内容以/或\或D:\ C:\之类开始,表示绝对路径,否则表示相对路径,相对于project中设置的basedir.
使用path或classpath可以设置类的路径,后面引用时用id设置的值
构建工程最常用的ant内置任务:
mkdir: 创建目录,dir=要创建的目录
delete: 删除文件或文件夹 dir=要删除的文件或文件夹
javac: 编译java源文件,java源文件放在srcdir指定的文件夹中,生成的.class文件按照 package语句组织目录,存放在destdir指定的文件夹中。要注意源文件的目录组织要与package语句相一致
war: 为web应用程序打包,destfile指定打包后生成的文件名,webxml指定所用的web.xml文件。<fileset dir="${basedir}"/>将basedir目录下所有的文件也放在包中
上面的build.xml例子中,target中的属性depends表示在执行本target之前必须要做的target,
例如dist 的depends=compile,意思是在用dist打包之前必须先用compile编译。这样当执行dist时首先执行compile
3.运行ant:
使用ant.bat可以直接运行ant,如果不带任何参数,ant会在当前路径下搜索build.xml文件,如果找到,就运行project的default指定的target.也可以带参数来选择build.xml文件和要运行的target
对于上面的例子,假定build.xml所在的目录为D:\struts_demo\ ,则下面三种执行方式效果是一样的:
1. cd d:\struts_demo
ant
2. ant -buildfile d:\struts_demo\build.xml
3. ant -buildfile d:\struts_demo\build.xml dist
如果执行ant -buildfile d:\struts_demo\build.xml compile,则执行compile target
有关ant使用和build.xml文件内容,在ant的manual中有详细的描述。
分享到:
相关推荐
1. **Ant简介** - Ant是一个基于Java的构建工具,其设计目标是简化Java项目的构建过程,通过XML描述构建文件,使得构建过程可配置且可跨平台。 - 它的核心思想是“任务驱动”,将构建过程分解为一系列的任务,如...
主要介绍了ant的使用方法。
主要介绍了ant的使用方法。
#### 一、Ant简介 1. **什么是Ant** - Ant是一款用于自动化构建过程的软件工具,最初由Apache Software Foundation开发。它主要用于编译、测试和部署Java应用程序,支持跨平台使用,因为它是用Java编写的。 2. **...
主要介绍了ant的使用方法。
### 一、Ant简介 Ant是一个基于XML的构建工具,它的主要任务是读取名为`build.xml`的配置文件,根据其中的指令执行相应的构建操作。Ant的核心理念是“一切都是任务”,它通过预定义的任务和用户自定义的任务来完成...
#### 一、Ant简介与特点 **Apache Ant** 是一款流行的开源构建工具,专门设计用于处理Java项目的构建需求。它由James Duncan Davidson创建,并以“Another Neat Tool”(另一个整洁的工具)的首字母缩写命名。Ant的...
主要介绍了ant的使用方法。
Ant是Apache软件基金会下的一个Java构建工具,它以其XML格式的构建文件闻名,用于自动化Java项目的构建、编译、...这个“ant简介及实例pdf”文档将为你提供一个良好的起点,帮助你在实践中逐步熟悉和掌握Ant的使用。
一、Ant简介 Ant的设计理念是“简单就是美”。在Java开发中,当项目变得复杂时,手动管理编译、测试和部署等过程会变得繁琐,Ant则能有效解决这个问题。它通过构建文件来驱动构建过程,使得构建任务可重复且易于维护...
1. **Ant简介** - Ant是一个基于Java的构建工具,它简化了软件项目的构建过程,特别是Java项目。 - 它的核心概念是任务(Task),这些任务是由Ant提供的或者由用户自定义的,用于执行各种构建操作,如编译、复制、...
Ant是Java开发中的一款自动化构建工具,类似于...开发者可以根据项目需求自定义Task,或者使用社区提供的众多预定义Task,以实现复杂的构建逻辑。通过合理地配置和利用Ant,可以大大提高Java项目的构建效率和一致性。
#### 一、Ant简介与特点 **Apache Ant** 是一款流行的开源项目构建工具,专为Java项目设计,同时也适用于其他类型的构建任务。Ant的主要优点包括跨平台性、简单易用以及高度可扩展性。下面将详细介绍Ant的特性、...
#### 一、Ant简介 Apache Ant 是一个 Java 环境下的开源构建工具,它通过一系列预定义的任务来驱动构建过程,支持跨平台运行。Ant 以 XML 文件的形式来配置构建过程,使得构建脚本具有良好的可读性和扩展性。 ####...
- 配置JaCoCo任务:在Ant中集成JaCoCo,需要使用JaCoCo的ant任务,包括`<jacoco:coverage>`和`<jacoco:report>`。前者用于收集覆盖率数据,后者用于生成报告。 - 运行测试并收集覆盖率:在JUnit任务中嵌套JaCoCo的...
### ant使用帮助文档 #### 知识点概览 1. **Ant的简介与功能** 2. **安装Ant的基本步骤** 3. **配置环境变量的方法** 4. **验证Ant是否安装成功** 5. **配置数据库链接信息** 6. **创建数据库表及与Ant项目的关联*...
### Ant简介 #### 一、Ant概述 Ant是一款开源的Java构建工具,它主要用于构建Java应用程序,同时也支持其他类型的项目构建。与传统的构建工具(如make、gnumake和nmake)相比,Ant的设计更加现代化且具备良好的跨...