ant的配置与使用
来源:互联网 发布:淘宝第一财经联系卖家 编辑:程序博客网 时间:2024/06/14 08:16
1、如何获得ant
从http://ant.apache.org/下载Ant,解压到任一目录下面,比如E:\aa
2、如何配置ant
设置环境变量
ANT_HOME=E:\aa\apache-ant-1.8.2
path=E:\aa\apache-ant-1.8.2\bin
最后验证是否安装成功
在dos中输入ant,如果显示
Buildfile: build.xml does not exist!
Build failed
则安装成功
或者输入ant -version查看版本
3、如何使用ant的基础元素
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}方式调用。
4、完整示例
创建一个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/wangchenyang/archive/2011/09/14/2176688.html
- ant的配置与使用
- ant配置与使用
- ant 环境的配置与使用
- Ant工具 ant的安装与配置 ant作用
- Ant工具 ant的安装与配置 ant作用
- Ant工具 ant的安装与配置 ant作用
- Ant工具 ant的安装与配置 ant作用
- Ant的安装与配置
- ANT的安装与配置
- ant的安装与配置
- ant的安装与配置
- ANT的安装与配置
- ANT的安装与配置
- Ant的安装与配置
- Ant的安装与配置
- Ant的配置使用入门
- ant的配置及使用
- Ant的安装与使用
- 比较
- 黑马程序员_内部类
- Bean-Query 一个把对象转换为Map的Java工具库
- 【软考】【设计模式】设计模式Java汇总
- 【投稿】如何找出iOS App的URL Scheme
- ant的配置与使用
- 我的异常:WindowsAPI中添加音乐
- CG破碎插件下载资源
- JVM GC 垃圾回收机制
- C# 生成图片缩略图
- Jclasslib 试用
- Java Thread 源码 附录
- 互联网创业杂谈
- 我想有个用得上的智能路由器