在Ant中引用外部的任务

王朝java/jsp·作者佚名  2006-01-30
窄屏简体版  字體: |||超大  

Ant为使用者提供了大量的任务,更为可贵的是,它允许使用者使用其它开发者开发的任务。在Ant主页上就有一个外部任务列表:http://ant.apache.org/external.html。只要你愿意,你也可以很快写出一个自己的任务来,看看本系列的“编写自定义任务,轻松扩展Ant”就行了。

在Ant中引用外部任务有两种情况: 一、Ant定义的可选任务

这些任务可以说是半官方的任务了,任务实际上已经写好了,不过该任务依赖的资源主要就是jar文件没有跟Ant一起发布。例如FTP任务就是这种情况。打开文档<ant install dir>\docs\manual\install.html#librarydependencies,原来还要到jakarta.apache.org下载1.1.0或更高版本的commons-net 和2.0.8或更高版本的jakarta-oro。注意这是针对Ant1.6说的,不同的Ant版本使用的外部库可能不一样。把下载到的commons-net-1.1.0.jar放到<ant install dir>\lib目录下,OK,你现在就可以使用FTP了:

<ftp server="ftp.apache.org"

remotedir="incoming"

userid="anonymous"

password="me@myorg.com"

depends="yes" >

<fileset dir="htdocs/manual"/>

</ftp>

二、一般的外部任务 这些任务同样需要下载所需的jar文件,放到<ant install dir>\lib目录下,同时在build.xml中需要定义这些外部任务。在http://ant.apache.org/external.html上有一个Timer任务,在下载jar后我们可以这样引用

build.xml:

<?xml version="1.0" ?>

<project name="testTimer" default="test">

<taskdef name="timer" classname="de.jeckle.AntExtension.Timer"/>

<target name="test"> <timer verbose="true">

<echo>test1</echo>

</timer>

<timer name="timer2">

<echo>test2</echo>

<timer name="timer3" verbose="true">

<echo>test3</echo>

</timer>

<echo>test4</echo>

</timer>

</target>

</project>

最后说说设置类路径的几种办法:

1. 把jar文件放到Ant安装目录的lib目录下,Ant会自动装载

2. 设置环境变量CLASSPATH,包含要引用的jar文件

3. 在TaskDef中指定classpath

<taskdef name="timer" classname="de.jeckle.AntExtension.Timer" classpath=”../lib/timer.jar”/>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航