Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。
make是基于shell命令而进行操作的。而ant不然,他依靠xml,所以也给了他跨平台的特性。
而且无需配置ant环境,ant不需要引入任何jar包,即可使用
1.java类:
package com.ant;
/**
* TestAnt
* @author EdwardShen
*
* 2018年3月21日
*/
public class TestAnt {
public static void main(String[] args) {
System.out.println("HelloWorld!");
}
}
2.激动人心的build.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- basedir:代表基路径(基路径一般以build.xml的当前路径为准,否则在调用reStart时,可能报错:找不到build.xml文件) -->
<project name = "testAnt" default = "start" basedir = ".">
<property name = "class.Package" value = "classes"/>
<property name = "src.dir" value = "../com/ant"/>
<property name = "jar.package" value = "output"/>
<property name = "jar.name" value = "testAnt.jar"/>
<property name = "class.name" value = "com.ant.TestAnt"/>
<!-- 避免出现:[java] Could not find com.ant.TestAnt. Make sure you have it in your classpath:没有配置ant环境的话,直接在xml中配置path的pathelement属性:值为class的包路径 -->
<path id="classPath">
<pathelement path="${class.Package}"/>
</path>
<!-- 创建包 -->
<target name = "init">
<mkdir dir = "${class.Package}"/>
<mkdir dir = "${jar.package}"/>
</target>
<!-- 编译成class文件 ,destdir:将class文件放在那里,includeantruntime="on":可避免出现warning: 'includeantruntime' was not set-->
<target name = "complie" depends = "init">
<javac srcdir = "${src.dir}" destdir = "${class.Package}" includeantruntime="on" />
</target>
<!-- 将class文件打成jar包 ,destfile:将jar放在那里+jar包的名字,basedir:根据哪里的目录的class而打成jar包-->
<target name = "jar" depends = "complie">
<jar destfile = "${jar.package}/${jar.name}" basedir = "${class.Package}"/>
</target>
<!-- 根据class文件,运行代码 -->
<target name = "start" depends = "jar">
<java classname = "${class.name}" classpathref = "classPath"/> <!-- classpath = "${class.Package}" -->
</target>
<!-- 删除文件:jar包+classes目录 ,dir:要删除的包名即目录名,file:要删除的jar包名-->
<target name = "clean" >
<delete dir = "${class.Package}"/>
<delete file = "${jar.package}/${jar.name}"/>
</target>
<!-- 同时运行多个target -->
<target name = "reStart"> <!-- depends = "clean,start" -->
<ant target = "clean"/>
<ant target = "start"/>
</target>
</project>
3.右击:runAs--Ant Build即可运行ant的xml文件了,之后会出现如下的信息:
4.运行clean时:会出现以下成功信息:
5.运行reStart时,会出现以下成功信息:
代表成功了!!!