Ant提供了丰富的task,这些task是由apache ant项目组开发、维护的,经过所有使用人员的测试,功能很稳定,同时具有跨平台的特性。所以当一个程序员开发某些功能时,如果Ant的task中包含这些功能,那么可以直接引用这个功能,ant的机制可以简单方便的将Ant的task应用到java程序中。
以下是一个示例,这个示例,将f:\study\Test1目录打成f:\study\mytest.jar
包。
package mytest;
import org.apache.tools.ant.*;
import org.apache.tools.ant.taskdefs.*;
import org.apache.tools.ant.types.*;
import java.io.File;
public class TestJar {
public TestJar() {
}
public static void main(String[] args) {
TestWar testWar1 = new TestWar();
testWar1.jar();
}
public static void jar()
{
final class Jarer extends Jar {
public Jarer() {
project = new Project();
project.init();
taskType = "jar";
taskName = "jar";
target = new Target();
}
}
Jarer jar = new Jarer();
jar.setDestFile(new File("f:\\Study\\mytest.jar"));
jar.setBasedir(new File("f:\\Study\\Test1"));
jar.execute();
}
}
在这个示例中,应用了Ant任务中的Jar类,从这个类继承了一个新的类Jarer,
Jarer类的功能就是创建Project和Target对象。
在以后的使用过程中,可以直接创建Jarer类的对象,然后设置Jarer的参数,最后调用Jarer的execute()方法。
附注:以上示例程序的编译、运行,仅需要将Ant的ant.jar包增加到classpath路径中。