我已经下载、解压并安装了Eclipse 3.4.2和一些插件(值得注意的是,EPIC、Clearcase、quantiumdb、MisterQ)。

现在我发现当我编辑Java项目时,代码补全不起作用。如果我输入字符串。然后按ctrl+空格,弹出“No Default Proposals”,底部的状态栏显示“No completion available”。

什么好主意吗?


当前回答

自从升级到Eclipse 2019-09后,我就遇到了这个问题。基于上面的一些建议,这对我来说是有效的。

我不得不去Eclipse ->首选项-> Java ->编辑器->内容辅助->高级。

我发现,如果我打开任何一个关键绑定建议,Java非类型,Java, Java(以任务为中心)或Java类型建议,那么我就可以使用自动完成。如果我把它们都打开,那么不仅自动完成工作,而且列出了重复的方法。我只是猜测,但我可能会使用Java类型建议。如果您能说明这四种类型有什么不同,我将不胜感激。

其他回答

一旦你检查了你的配置,完成仍然不能工作:

确保您拥有正确的目录结构。

您看到文件旁边的正确图标了吗?:

它将告诉您Eclipse将如何处理该文件:

我张贴这个答案,因为我有一个故事与Maven webapp工件。默认情况下,Maven-WebApp不为资源创建文件夹,我把我的Java放到资源中,想了5分钟到底发生了什么……:)

也许这可以帮助其他遇到同样问题的人。

我的设置:别人做的旧Gradle项目(版本为Gradle 2.12),使用Gradle导入向导导入STS (Eclipse Oxygen.2(4.7.2))。

代码补全也没有工作(我仍然在Java文件中有空心的Js),但至少我通过这样做来完成代码补全:

右键单击项目文件夹>属性> Gradle >配置工作区设置> Java >编辑器>内容辅助>高级 在上面的窗口中检查“Java提案”。 2x申请&关闭

检查项目的库。可能您已经包含了两个这样的jar文件,其中有相同的类可用,或者代码中的一个类可以在两个jar文件中引用。在这种情况下,eclipse也会停止辅助代码,因为它完全混淆了。

更好的检查方法是转到辅助不起作用的文件并注释那里的所有导入,而不是逐个添加导入并在每次导入时检查code-assist是否有效。您可以很容易地找到重复引用的类。

尝试恢复“Windows >首选项> Java >编辑器>内容辅助>高级”中的默认选项

您在这个首选项屏幕上看到的数据类型的一个例子,但不一定是您当前拥有的数据。

(摘自Vadim的这篇博文“Eclipse中的内容辅助复制(Mylyn)”: 如果有重复的Mylyn条目,取消选中名称中不包含“(Mylyn)”的重复条目。

Eclipse帮助页定义了要恢复的默认列表:

选择'default'内容辅助列表中包含的提案类型: 其他Java提案, SWT模板建议, 模板的提议, 类型的建议

对2021年9月的我来说,这是一个奇怪的Eclipse bug。我在类的注释中有一个多行字符串。这只会导致该类在尝试编写完整代码时失败(即使该类编译正常)。