在有eclipse集成环境下ant其实不是很重要,但有些项目需要用到,另外通过eclipse来学习和理解ant是个很好的途径,所以写他demo总结下要点,希望能够帮到大家。
一、本人测试环境eclipse3.6已自动集成了ant环境, 所以就不用单独下载配置ant环境了。
如果没有eclipse集成环境可以自己下载ant http://www.apache.org/ 下载最新的版本
解压ant 后设置ANT_HOME, PATH中添加ANT_HOME目录下的bin目录(如:ANT_HOME:D:\apache-ant-1.9.2,PATH:%ANT_HOME%\bin)
测试方法:开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
Buildfile: build.xml does not exist!
Build failed
说明已经完成ant的设置。
二、创建一个java项目,AntTestDemo 创建一个测试类HelloAnt.java
1 package com.zdz.ant.test;
2
3 /**
4 * java ant test
5 * @author zheng
6 *
7 */
8 public class HelloAnt {
9
10 public static void main(String[] args) {
11 System.out.println("Hello ant,by zdz!");
12 }
13
14 }
在项目根目录下创建一个build.xml文件,内容如下:
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <project name="AntTestDemo" default="run" basedir=".">
3 <property name="src" value="src"/>
4 <property name="dest" value="classes"/>
5 <property name="helloant_jar" value="helloant.jar"/>
6 <target name="init">
7 <mkdir dir="${dest}"/>
8 </target>
9 <target name="compile" depends="init">
10 <javac srcdir="${src}" destdir="${dest}"/>
11 </target>
12 <target name="build" depends="compile">
13 <jar jarfile="${helloant_jar}" basedir="${dest}"/>
14 </target>
15 <target name="run" depends="build">
16 <java classname="com.zdz.ant.test.HelloAnt" classpath="${helloant_jar}"/>
17 </target>
18 <target name="clean">
19 <delete dir="${dest}" />
20 <delete file="${helloant_jar}" />
21 </target>
22 <target name="rerun" depends="clean,run">
23 <ant target="clean" />
24 <ant target="run" />
25 </target>
26 </project>
为直观起见直接截图上来了
三、右键点击build.xml 运行ant,如下图所示:
运行结果:
Buildfile: D:\workspace\AntTestDemo\build.xml
init:
[mkdir] Created dir: D:\workspace\AntTestDemo\classes
compile:
[javac] Compiling 1 source file to D:\workspace\AntTestDemo\classes
build:
[jar] Building jar: D:\workspace\AntTestDemo\helloant.jar
run:
[java] Hello ant,by zdz!
BUILD SUCCESSFUL
Total time: 2 seconds
出来BUILD SUCCESSFUL 和预期结果说明ant跑成功了。
另外有可能会提示 includeantruntime 警告,出现这个警告只要把
<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${dest}" />
</target>
修改为
<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${dest}" includeantruntime="on" />
</target>
也就是添加 includeantruntime="on" 。
这样出来的build结果是有些差别的,如上面就就变成下面结果了
Buildfile: D:\workspace\AntTestDemo\build.xml
init:
compile:
build:
run:
[java] Hello ant,by zdz!
BUILD SUCCESSFUL
Total time: 312 milliseconds