在何处放置包含自定义ant任务的JAR?

时间:2011-10-31 22:29:52

标签: ant

我已根据Apache doc创建了一个自定义ant任务。

运行蚂蚁,我得到:

BUILD FAILED
/home/russ/blackpearl/fun/build.xml:92: taskdef class com.etretatlogiciels.ant.task.SqlScriptPreprocessor cannot be found using the classloader AntClassLoader[]

在使用

之前,我在 build.xml 中有以下内容
<taskdef name="sqlscriptpreprocessor" classname="com.etretatlogiciels.ant.task.SqlScriptPreprocessor" />

...我已将 sqlscriptpreprocessor.jar 的副本放入我的本地lib子目录(应该在classpath上),甚至放入 / usr / bin / ant / lib < / em>(这是apache-ant-1.8.2)。

这应该去哪儿?或者我应该寻找其他什么问题?

非常感谢任何和所有评论。

拉​​斯

1 个答案:

答案 0 :(得分:6)

尝试嵌套

<classpath>
<pathelement location="C:\**\**.jar"/>
</classpath> 

在taskdef中,例如

<taskdef resource="net/sf/antcontrib/antcontrib.properties">
    <classpath>
        <pathelement location="C:\myfolder\ant-contrib-1.0b3.jar"/>
    </classpath> 
</taskdef> 

理想情况下它应该从ant / lib中获取,但指定 pathelement 会强制它查看给定的路径。