为啥 Eclipse 可能无法在 Ant 构建文件的运行选项中显示“Ant Build”?

Posted

技术标签:

【中文标题】为啥 Eclipse 可能无法在 Ant 构建文件的运行选项中显示“Ant Build”?【英文标题】:Why might Eclipse fail to show "Ant Build" in the run options for an Ant build file?为什么 Eclipse 可能无法在 Ant 构建文件的运行选项中显示“Ant Build”? 【发布时间】:2012-10-03 16:55:28 【问题描述】:

通常,当我在 Eclipse 包资源管理器中右键单击 Ant 构建文件并从上下文菜单中选择“运行方式”时,我会看到“Ant Build”和“Ant Build...”选项可供选择。这是正确的行为。

有时,这些选项会被与 Ant 无关的选项所取代,例如“JUnit 测试”和“Java 小程序”。什么会导致 Eclipse 失去其上下文敏感性并且不在那里显示正确的选项?我该如何解决?

我已经在多个版本的 Eclipse 中看到了这一点,包括 Windows XP 和 Windows 7。文件是否命名为 build.xml 似乎并不重要。无论是否发生此错误,构建文件都会在 Package Explorer 中显示为带有 Ant 图标,而不是通用 XML 文件图标。即使发生奇怪的行为,运行构建的替代方法也可以正常工作,例如通过“运行”菜单或打开文件并右键单击编辑器。

到目前为止,我能找到的唯一“解决方案”是不断重新启动 Eclipse,直到它再次开始工作,这只是把罐子踢到路上,实际上并没有解决任何问题。

编辑: 我现在偶尔会遇到 Maven POM 的上下文菜单实例,它在“运行方式”下显示 Ant 构建选项。也许“不正确的 'Run As' 选项”是一个更广泛的 Eclipse 问题?

【问题讨论】:

有趣的问题,但它肯定不属于这里。确实看起来像一个错误 - 请随时在 eclipse.org 上打开错误报告。 很公平。我不确定这是 Eclipse 错误还是我的配置有问题。但是现在已经一年半了,我什至没有我遇到问题的系统,所以......我会把它留给其他人报告。如果尚未修复。 【参考方案1】:

在 Eclipse 插件开发人员的上下文中,所有此类弹出菜单、菜单和工具栏操作都称为命令/操作集。这些元素有它们的visible-when 和 enable-when 检查以在需要的条件下显示它们。条件包括所需的主动视角、主动视图、要求选择和选择的有效性。大多数情况下,未显示的选项是由于实际预期行为的条件失败。所有这些条件都应该通过在文档中直接或间接提及这些条件来记录。如果任何条件没有正确实现,我们总是可以在Bugzilla 中向 eclipse 社区提出错误。在提出错误之前,应该检查类似的现有错误是否已经存在。

【讨论】:

【参考方案2】:

作为一种解决方法,您可以将 ant 脚本添加到 Ant 视图中。从那里找到脚本比从包资源管理器中更容易找到,您甚至可以轻松地执行除默认目标之外的其他目标。

【讨论】:

以上是关于为啥 Eclipse 可能无法在 Ant 构建文件的运行选项中显示“Ant Build”?的主要内容,如果未能解决你的问题,请参考以下文章

想要一个 eclipse java 项目自动运行 ant 构建文件

有没有从Eclipse自动生成ant build.xml文件的方法?

tomcat 每次启动编译文件classes 为啥还用ANT进行重新编译? 和maven有啥区别

无法从 eclipse 项目构建路径中的 apache ivy 依赖项导入类

Eclipse之ant插件设置

eclipse中的ant调试