2

在我的 build.xml 中,Eclipse 指示存在错误,但在 Eclipse 中或从命令行运行 Ant 任务可以正常工作。错误是:“未找到参考 cobertura.classpath。” 对于代码:

    <path id="cobertura.classpath">
        <pathelement location="/usr/share/java/cobertura.jar" />
    </path>

    <taskdef resource="tasks.properties">
        <classpath refid="cobertura.classpath" />
    </taskdef>

如果我将代码更改为以下,错误就会消失:

    <taskdef resource="tasks.properties">
        <classpath location="/usr/share/java/cobertura.jar" />
    </taskdef>

为什么 Eclipse 不能正确解析第一个代码片段?

4

1 回答 1

1

看起来像是 Eclipse Ant 解析器中的一个错误。它应该以任何一种方式工作表明它不是 Eclipse 使用的 Ant 库中的错误。

Eclipse 的插件架构通常会添加解析器来构建文件的“内部”元素,这些元素用于导航树、交叉引用等。在极少数情况下,这些解析器会偏离库实现中实际可用的功能。

我会检查您是否有任何其他项目(属性等)接近或可能混淆 id。除此之外,我准备提交错误报告。

于 2011-02-10T23:40:36.850 回答