初次接触Ant,就被它的魅力深深吸引住了,以前只知道一味的写代码,从没有想过怎样优化代码,编译,将工程打包成jar等,最近一段时间不怎么忙,就学习一些新的东西了。看看公司的项目框架,发现build.xml文件,不知道是干什么的,google一下关于它的很多介绍,按捺不住激动的心情,写下了这篇关于Ant入门实例,值的一看哦。好啦,不多说了,看看就知道Ant的魅力是怎样的了。
关于Ant的安装与配置网上有很多的介绍,就不多说了。看例子。
建立工程:test
新建类:HelloWorld
- package test;
- public class HelloWorld {
- public static void main(String[] args) {
- HelloWorld hw=new HelloWorld();
- hw.invoke();
- }
- public void invoke(){
- System.out.println("Hello,I am "+this.getClass().getName());
- }
- }
建立build.xml文件,该文件会被默认为Ant的配置文件,配置如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <project default="all" name="hello-world" basedir=".">
- <target name="all" depends="clean,build,docs,run"></target>
- <target name="clean">
- <delete dir="./classes"/>
- <delete dir="./build"/>
- <delete dir="./docs"/>
- </target>
- <target name="build" depends="compile1">
- <mkdir dir="./build"/>
- <jar jarfile="./build/HelloWorld.jar" baseDir="./classes"/>
- </target>
- <target name="compile1">
- <mkdir dir="./classes"/>
- <javac srcdir="./src" destdir="./classes"/>
- </target>
- <target name="docs">
- <mkdir dir="./docs"/>
- <javadoc packagenames="test.*" sourcepath="./src" destdir="./docs"/>
- </target>
- <target name="run">
- <java classname="test.HelloWorld" classpath="./build/HelloWorld.jar"/>
- </target>
- </project>
选中build.xml文件,右击,选择运行方 -> Ant构建,运行结果如下:
- Buildfile: F:/workstudy/ant/build.xml
- clean:
- [delete] Deleting directory F:/workstudy/ant/classes
- [delete] Deleting directory F:/workstudy/ant/build
- [delete] Deleting directory F:/workstudy/ant/docs
- compile1:
- [mkdir] Created dir: F:/workstudy/ant/classes
- [javac] Compiling 2 source files to F:/workstudy/ant/classes
- build:
- [mkdir] Created dir: F:/workstudy/ant/build
- [jar] Building jar: F:/workstudy/ant/build/HelloWorld.jar
- docs:
- [mkdir] Created dir: F:/workstudy/ant/docs
- [javadoc] Generating Javadoc
- [javadoc] Javadoc execution
- [javadoc] 正在装入软件包 test 的源文件...
- [javadoc] 正在构造 Javadoc 信息...
- [javadoc] 标准 Doclet 版本 1.5.0_09
- [javadoc] 正在构建所有软件包和类的树...
- [javadoc] 正在生成 F:/workstudy/ant/docs/test//HelloWorld.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/test//package-frame.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/test//package-summary.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/test//package-tree.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/constant-values.html...
- [javadoc] 正在构建所有软件包和类的索引...
- [javadoc] 正在生成 F:/workstudy/ant/docs/overview-tree.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/index-all.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/deprecated-list.html...
- [javadoc] 正在构建所有类的索引...
- [javadoc] 正在生成 F:/workstudy/ant/docs/allclasses-frame.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/allclasses-noframe.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/index.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/help-doc.html...
- [javadoc] 正在生成 F:/workstudy/ant/docs/stylesheet.css...
- run:
- [java] Hello,I am test.HelloWorld
- all:
- BUILD SUCCESSFUL
- Total time: 2 seconds
再刷新test工程,意想不到的惊喜出现了。。。