1.安装Ant
先从http://ant.apache.org/下载Ant,解压到任一目录下面,比如E:\Lab
然后设置环境变量
ANT_HOME=E:\Lab\apache-ant-1.8.2
path=E:\Lab\apache-ant-1.8.2\bin
最后验证是否安装成功
在dos中输入ant,如果显示
Buildfile: build.xml does not exist!
Build failed
则安装成功
2.基础元素
project元素
project元素是Ant文件的根元素
project的属性
Attribute
|
Description
|
Required
|
name
|
项目名称
|
No
|
default
|
当没有指定target时使用的缺省target
|
Yes
|
basedir
|
用于指定基路径的位置。该属性没有指定时,使用 Ant 的构件文件的附目录作为基准目录。
|
No
|
target元素
target为Ant的基本执行单元,它可以包含一个或多个具体的任务。多个target 可以存在相互依赖关系
Ant会依照depends属性中target出现的顺序(从左到右)依次执行每个target。然而,要记住的是只要某个target依赖于一个target,后者就会被先执行。
<target name="A"/>
<target name="B" depends="A"/>
<target name="C" depends="B"/>
<target name="D" depends="C,B,A"/>
|
假定我们要执行target D。从它的依赖属性来看,你可能认为先执行C,然后B,最后A被执行。错了,C依赖于B,B依赖于A,所以先执行A,然后B,
然后C,最后D被执行。
一个target只能被执行一次,即时有多个target依赖于它。
若想更好的控制build过程,可以使用if或unless。
if 属性
用于验证指定的属性是否存在,若不存在,所在 target 将不会被执行。
unless 属性
该属性的功能与 if 属性的功能正好相反,它也用于验证指定的属性是否存在,若不存在,所在 target 将会被执行。
property元素
property元素可看作参量或者参数的定义(即经常使用的变量),project 的属性可以通过 property 元素来设定,也可在 Ant 之外设定。
name是变量的名称 value是变量的值,要用某个变量时使用${name}方式调用。
3.完整示例
创建一个java项目
HelloWorld.java
package com.test;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
编写build.xml文件
注:build.xml放在和src同级目录,而不是在src下级目录
目录结构是
MyProject <dir>
|--lib <dir> --库目录
|--classes <dir> --目的文件目录
|--src <dir> --源文件目录
|--doc <dir> --api文档目录
|--build.xml
<?xml version="1.0" encoding="UTF-8" ?>
<project name="helloWorld" default="run" basedir=".">
<property name="src" value="src"/>
<property name="dest" value="build/classes"/>
<property name="lib" value="lib"></property>
<property name="hello_jar" value="hello1.jar"></property>
<!--初始化 之前执行删除操作-->
<target name="init" depends="clean">
<mkdir dir="${dest}"/>
</target>
<!--编译生成class文件 -->
<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${dest}"></javac>
</target>
<!--将编译后的class文件打包-->
<target name="build" depends="compile">
<mkdir dir="${lib}"/>
<jar jarfile="${lib}/${hello_jar}" basedir="${dest}"></jar>
</target>
<target name="run" depends="build">
<java classname="com.test.HelloWorld" classpath="${lib}/${hello_jar}"></java>
</target>
<!--删除-->
<target name="clean">
<delete dir="${dest}"></delete>
<delete dir="${lib}"></delete><!-- 是dir 删除目录 ,不是file 删除文件-->
</target>
</project>
整个过程:初始化----编译----打包---放到相应的位置
参考:
http://www.cnblogs.com/philander/articles/1782254.html
http://www.cnblogs.com/elric/archive/2011/03/19/1988840.html
分享到:
相关推荐
ant 学习实例,初学者的好东西 非常好,初学者福音
学习ant打包技术,轻松打包,代码简单清晰,易学易懂!
ant 学习笔记 ,自己的一些学的时候的一个例子
ant环境配置,ant文件编写,ant使用技巧,ant开发实例
ant 开发及整合 源码 实例 学习的好东西
ant学习手册,实例教程
关于Ant学习的一点点小结,整理成档了,文档中已经包含了几个简单的build.xml实例,也有注释,简单明了、通俗易懂
其中包括: (1)Ant帮助文档.docx (2)ant打war包.txt (3)Ant入门与进阶.pdf (4)ant实用实例.pdf (5)ant学习小节.doc (6)Java_ANT.pdf (7)自己写的一个简单例子
从ANT的安装到跑起来,有实例演示,很适合新手学习参考
从ant安装开始,简单实例逐步讲解,ant进阶讲解
ant入门学习,java实例。
ant的简单入门教程 1、ant介绍;2、ant安装;3、第一个ant脚本;4、整合ant;5、ant进阶;6、常用task;7、控制流程;8、实例分析;9、如何继续学习;10、ant使用cvs实例;11、Q&A
本人小白一名,第一次学习react ,该资料为本人原创,采用的是react+ant design的Tabled的一个小demo,暂时只实现了增加,删除单行,多行删除有Bug,查看详情,呕心沥血耗时一周完成,禁止抄袭,转载请先留言, ...
本书介绍了如何使用Ant 1.7去构建、测试、部署现代的Java应用程序,进行测试驱动的Java应用开发,本书还覆盖了一些最新式的构建...这本书适合所有Java开发者,即使是Java新手,结合Ant来学习Java也能获得额外的收获。
本书介绍了如何使用Ant 1.7去构建、测试、部署现代的Java应用程序,进行测试驱动的Java应用开发,本书还覆盖了一些最新式的构建...这本书适合所有Java开发者,即使是Java新手,结合Ant来学习Java也能获得额外的收获。
本书介绍了如何使用Ant 1.7去构建、测试、部署现代的Java应用程序,进行测试驱动的Java应用开发,本书还覆盖了一些最新式的构建...这本书适合所有Java开发者,即使是Java新手,结合Ant来学习Java也能获得额外的收获。
关于ejb的实例学习,ant进行打包的程序,你把hello文件夹里的hello.jar和Helloweb文件夹里的HelloWeb.war放到jboss中部署,可以运行。你也可以工程放到你的工作空间自己打包
这个是学习java使用的例子,里面有xml,ececl文件的生成解析,ant的使用,c3po数据源的使用,pdf生成txt文件例子
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
目录: 1. Ant介绍... 2. Ant 安装... 3. 第一个Ant脚本... 4. 整合ant 5. Ant进阶... 6. Ant常用task. 7. 在ant中控制流程(if else ) 8. 实例分析: 9. 如何继续学习...