我尝试将Ant-Contrib 1.0b3集成到Eclipse中,方法是将ant-contrib-1.0b3.jar和附带的jar文件从libs-directory添加到Ant的“Global Entries”部分。 Eclipse中的Runtime-preferences页面。
对于不需要lib的任务,例如propertyregex
,这样可以正常工作。
但是当我尝试使用postMethod
任务时,我收到以下错误:
java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
有关如何解决此问题的任何建议?
答案 0 :(得分:2)
看起来你的装备不包含Apache Commons Codec,它必须是ant-contrib的依赖。
根据依赖关系here,您可能还需要commons-logging,但您可能已经得到了。{/ p>
答案 1 :(得分:0)
在构建文件中定义第三方任务时,指定类路径会更加清晰。
提供单个罐子或向类路径添加<fileset>
个从属罐子,例如
<taskdef
resource="net/sf/antcontrib/antlib.xml"
uri="http://ant-contrib.sourceforge.net"
>
<classpath>
<pathelement location="${ant-contrib.jar}"/>
<fileset dir="${ant-contrib-dependency.lib}">
<include name="*.jar"/>
</fileset>
</classpath>
</taskdef>
您可以在此构建文件中定义默认的ant-contrib.jar
和ant-contrib-dependency.lib
属性,并在ant构建工具VM参数中提供项目特定的覆盖。这意味着您不必将这些文件复制到系统上的各种目录中。