1

我为 Eclipse 安装了一个新插件(名为 AgentZero)。我使用 MercurialEclipse 导入了一个项目,导入没问题。现在,在对这个项目进行编程时,没有编译。此外,没有自动完成功能。当我尝试使用自动完成时,我收到以下消息:“此编译单元不在 Java 项目的构建路径上”。之后,我收到此消息:“来自'org.eclipse.jdt.ui'插件的'org.eclipse.ui.JavaAllCompletionProposalComputer'提案计算机未正常完成。扩展从'computeCompletionProposals( “

所有其他项目都很好。我能做些什么?谢谢

4

1 回答 1

0

您需要检查导入是否已将项目正确配置为 Java 项目。

它是一个Java项目吗?

  • 项目图标上是否有“J”覆盖?
  • 在项目的属性对话框中是否有Java Build Path & Java Compiler之类的页面?
  • Builders属性页面上,它是否显示“Java Builder”并且该条目是否被选中?

源文件夹是否正确配置?

  • 检查项目属性中的Java Build Path > Source
  • 确保没有不需要的包含/排除过滤器。

如果其中任何一个缺失或有错误,则 JDT 缺少建议任何代码完成的上下文 - 因此您会看到错误对话框。

我无法就 AgentZero 提供建议,您也没有指定此插件与问题的关系。

如果上述方法不能解决问题,您应该在错误日志中查找最近的条目。

编辑:

如果该项目确实没有正确配置为 Java 项目,那么了解您是如何陷入这种情况的可能会很有趣。例如,如果您只是在项目导入期间忘记选择一个选项,重新开始可能是最简洁的选项。如果,OTOH,导入工具未能执行它应该执行的操作,您可能需要报告错误(在这种情况下针对 MercurialEclipse)。

如果问题不能通过重新导入来解决,对项目配置文件进行一些仔细的修改可能会让你回到正轨。在这种情况下,我建议创建一个全新的纯 Java 项目,并使用创建的配置作为修复的参考。

为此,您应该知道这些文件的用途(由于“.* 资源”过滤器,默认情况下所有这些文件都隐藏在 Package Explorer 中):

。项目

该文件应将Java 特性附加到项目中。这就是 Eclipse 将项目识别为 Java 项目的方式。此外,.project 声明了所有自动调用的构建器。添加自然和生成器(如果不存在)是一种安全操作,可能已经解决了您的问题。在项目属性对话框中检查结果。

.classpath

Eclipse 在这里存储您在Java Build Path属性页上配置的所有内容。由于该文件的内容很大程度上取决于您如何管理依赖项(例如,使用 Maven?),因此无法给出一般性建议。如果可能,请使用属性对话框而不是手动编辑。

.settings/org.eclipse.jdt.core.prefs

JDT 在这里存储所有进一步的配置选项,例如编译器选项。

于 2015-05-02T19:34:51.313 回答