Eclipse 1.8.2 build.xml中需要ant contrib,但会导致错误
我发现build.xml中需要以下内容:Eclipse 1.8.2 build.xml中需要ant contrib,但会导致错误,eclipse,ant,ant-contrib,Eclipse,Ant,Ant Contrib,我发现build.xml中需要以下内容: 为了支持ant contrib。。。我正在使用的构造。然而,Eclipse对此非常不满。在build.xml顶部的这一部分中,无论是从Eclipse外部的命令行还是Eclipse内部的命令行,一切都可以完美地工作,尽管存在以下问题: 什么“名称”实际上是“未定义的”?我非常想了解如何处理这个问题。在谷歌上,我看到其他人也有相同或类似的问题,但没有人给出一个好的答案,至少不适合我的情况 非常感谢您对这个问题的评论 Russ我不知道我的方式是否只是样式
为了支持ant contrib。。。我正在使用的构造。然而,Eclipse对此非常不满。在build.xml顶部的这一部分中,无论是从Eclipse外部的命令行还是Eclipse内部的命令行,一切都可以完美地工作,尽管存在以下问题:
什么“名称”实际上是“未定义的”?我非常想了解如何处理这个问题。在谷歌上,我看到其他人也有相同或类似的问题,但没有人给出一个好的答案,至少不适合我的情况
非常感谢您对这个问题的评论
Russ我不知道我的方式是否只是样式,但是如果您做了一些事情,比如为类路径创建一个单独的元素,比如:
<path id="ant.classpath">
<fileset dir="${ant.library.dir}">
<include name="ant-contrib-1.0b3.jar"/>
</fileset>
</path>
?
或者,我发现了另一个说法,即对ANT版本1.6+使用antlib.xml
而不是antcontrib.properties
编辑:
我很难确定这个链接在哪个产品中解决了这个问题,但是如果没有其他东西的话,在这个特定的评论中有几个片段可以为你提供一个合适的解决方法——尽管你说的可能就是上面提到的
没有人给出好的答案,至少不符合你的解决方案
我不知道我的方式是否只是样式,但是如果您为类路径创建一个单独的元素,比如:
<path id="ant.classpath">
<fileset dir="${ant.library.dir}">
<include name="ant-contrib-1.0b3.jar"/>
</fileset>
</path>
?
或者,我发现了另一个说法,即对ANT版本1.6+使用antlib.xml
而不是antcontrib.properties
编辑:
我很难确定这个链接在哪个产品中解决了这个问题,但是如果没有其他东西的话,在这个特定的评论中有几个片段可以为你提供一个合适的解决方法——尽管你说的可能就是上面提到的
没有人给出好的答案,至少不符合你的解决方案
我发现了这里描述的问题和简单的解决方法: 我通过以下生成文件确认:
<project default="test">
<!-- Eclipse complains if you comment this out -->
<property name="dummy" value="dummy"/>
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="C:/lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
<target name="test">
</target>
</project>
如果在taskdef之前没有属性声明,Eclipse会抱怨
我尝试的另一项工作是将taskdef移动到目标中。这也起了作用:
<target name="test" depends="init">
</target>
<target name="init">
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="C:/lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
</target>
我发现了这里描述的问题和简单的解决方法: 我通过以下生成文件确认:
<project default="test">
<!-- Eclipse complains if you comment this out -->
<property name="dummy" value="dummy"/>
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="C:/lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
<target name="test">
</target>
</project>
如果在taskdef之前没有属性声明,Eclipse会抱怨
我尝试的另一项工作是将taskdef移动到目标中。这也起了作用:
<target name="test" depends="init">
</target>
<target name="init">
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="C:/lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
</target>
我将对此进行试验。我也尝试过antlib.xml,但没有成功。我认为这是一个过度繁荣的日食,但我肯定要修复它。谢谢我会检查实验的结果。@RussBateman我将ant contrib与ant 1.8.2一起使用,没有任何问题。必须是特定于Eclipse的问题。我想提到的另一件事是@RussBateman——我没有权限留下评论,否则我会对您的问题发表评论——我认为未定义的任务/类型是componentdef
(与作为消息模板一部分的任务/类型相反)。我相信也有一种方法可以只引入一个您想要的扩展(在您的例子中是if
),但我需要进一步研究。@Matt:是的,只为了解而引入可能很有用,尽管我想整个ant contrib的事情似乎根本不会影响我的构建。嘿,谢谢你的帮助!像这样的怎么样:<…>今天下午我将尝试这个方法,因为我需要完成一些tomcat任务。我将尝试这个方法。我也尝试过antlib.xml,但没有成功。我认为这是一个过度繁荣的日食,但我肯定要修复它。谢谢我会检查实验的结果。@RussBateman我将ant contrib与ant 1.8.2一起使用,没有任何问题。必须是特定于Eclipse的问题。我想提到的另一件事是@RussBateman——我没有权限留下评论,否则我会对您的问题发表评论——我认为未定义的任务/类型是componentdef
(与作为消息模板一部分的任务/类型相反)。我相信也有一种方法可以只引入一个您想要的扩展(在您的例子中是if
),但我需要进一步研究。@Matt:是的,只为了解而引入可能很有用,尽管我想整个ant contrib的事情似乎根本不会影响我的构建。嘿,谢谢你的帮助!像这样的怎么样:<…>今天下午我想试试,因为我需要完成一些tomcat任务。像魔术,我的朋友!谢谢你。(我想知道我是否应该用这个来击中Eclipse的Bugzilla!?)就像魔术一样,我的朋友!谢谢你。(我想知道我是否应该用这个来点击Eclipse的Bugzilla!)