常见的目标在Eclipse中无法识别。

8

我已经在./common/common.xml中添加了所有常见的目标,例如(initcleangetivy等),并且加入了:

<import file="${basedir}/common/common.xml"/>

build.xml中。

当我构建项目时,它运行得很好。但是,当我在Eclipse IDE中打开build.xml时,我看到一些下面有“红色”标记的targets,这些targets具有在common.xml中定义的依赖目标。当我将鼠标悬停在那些被标记为红色的目标上时,我会看到一个消息,上面写着:

此项目中不存在目标init

需要说明的是,common文件夹是通过svn:externals添加的。这在Eclipse中需要额外的配置吗?


你有没有想出解决这个问题的办法?我在我的当前版本的Eclipse Helios中遇到了这个问题。 - jtruelove
4个回答

2
我使用的是Eclipse Indigo Service Release 1 Build id: 20110916-0149,带有ant 1.8.2,并且像Steve所提到的那样,import问题似乎已经解决了。但是对于include仍然存在问题,没有答案可以解决我的问题。我简短地搜索了一下bugtracker,但没有时间确定并测试最新版本的eclipse,然后在bugtracker上发布一个bug。
编辑: 在重构项目中的文件夹结构并移动构建文件后,我再次遇到了import问题。虽然我在项目上启动了“验证”,但验证缓存了旧位置并没有意识到移动。我不得不关闭编辑器,警告消失了。

1
如果你的build.xml文件和common目录处于同一级目录下,那么只需要尝试:
<import file="common/common.xml" />

这对我来说很好用。


我也尝试了那个。 在这两种情况下,我都能够构建项目,但为什么当我打开build.xml时,Eclipse无法识别常见的目标呢? 我正在使用Eclipse ganymede 3.4.2,我也尝试过galileo。 - Angrezy

0

使用包含路径${basedir}/common/common.xml,因为.可能是Eclipse安装的目录。


忘了提到,我在build.xml中添加了import file =“$ {basedir} / common / common.xml”。 - Angrezy
我有一个常见的目录,作为svn:external包含在内。和你的设置几乎一样。我的构建文件很简单: <import file="common/build/common-targets.xml" /> </project> 你在Eclipse中使用哪个ANT运行时?我正在使用1.7.1.v20090120-1145。 - Steve
啊,是的,Ant运行时可能会产生影响。除此之外,我陷入了困境。 - Aaron Digulla

0

我在网上找到了一篇文章这里,其中有人找到了一个解决方法。你只需要让文件导入不是ant构建文件中的第一行。例如,如果你把它放在属性声明之后,错误就会消失。这对我很有效,现在eclipse也很开心。

我们遇到的具体问题似乎是因为我们将通用的build.xml文件导入到我们特定项目的构建文件中,但当它是我们特定项目构建文件中的第一行时,导入会出现问题。

然而,如果我在导入之前加上一个属性任务,它似乎可以正常工作。我猜这可能会强制执行一些未在<import>中发生的初始化。我不知道为什么在Ant 1.8的命令行或使用Ant 1.7的Eclipse中都没有发生同样的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接