eclipse中使用Ant的时候,报了如下错:
[taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found.
经过研究发现是,在Eclipse中自带的Ant环境下缺少一个jar包,该 jar 包中包含net/sf/antcontrib/antlib.xml,为ant-contrib-1.0b3.jar。
所以不建议使用eclipse自带的ant,我们设置eclipse的ant_home 为我们自己的ant_home,这样也便于管理,如图:
eclipse 修改设置之后,如果我们的ant的lib目录下没有 ant_contrib.jar 也要下载该jar 文件并拷贝到 ant 的 lib 目录中。
Ant-contrib是使用Ant编写脚本最重要的补充。当使用Ant编写一些较为复杂的逻辑功能,比如循环和流程判断时,自然希望Ant能支持这种编程能力。
Ant-contrib为Ant提供了与通常所使用的编程语言功能相同的<if>、<for>、<switch>等逻辑判断任务,支持对字符串的排序<sortlist>任务,甚至还支持常见的数学运算,如加、减、乘、除、求余等功能。在构建过程中灵活运用这两个扩展包,将大大增强Ant的可编程性,这其实就是一种基于XML脚本的编程。
安装 ant-contrib 很简单,就是下载ant-contrib.jar 然后复制到Ant安装目录下的lib文件夹下,并且在我们需要使用的build.xml 文件中加入如下声明:
<taskdefresource="net/sf/antcontrib/antlib.xml"/>