当我运行我的Ant构建时,它失败并出现以下异常:
Unexpected element "{}target" {antlib:org.apache.tools.ant}target
我正在使用Eclipse 3.4.2。
请让我知道我在这里缺少的东西。
答案 0 :(得分:27)
我可以通过将target
置于ant构建文件中所需的project
元素之外来重现此问题。该错误表示您的构建文件中存在错误 - 某个地方(target
元素)位于错误的位置。
此版本会抛出该错误:
<?xml version="1.0"?>
<target name="wibble" />
<project name="stack_overflow">
</project>
然而这不是:
<?xml version="1.0"?>
<project name="stack_overflow">
<target name="wibble" />
</project>
在完整的错误消息中,您应该获得一个行号,以引导您到需要注意的文件中的位置:
# line number here
# v
build.xml:2: Unexpected element "{}target" {antlib:org.apache.tools.ant}target
答案 1 :(得分:3)
从根本上说,apache基础并没有清楚地表达要编写ant脚本的命名空间。然而,它是一个重要的XML概念......
但是,您收到的错误消息显示了此命名空间URI:antlib:org.apache.tools.ant
虽然大多数时候您不需要绑定默认命名空间,但这可能对您的情况有所帮助:
<project xmlns='antlib:org.apache.tools.ant'>
<!-- ... -->
</project>