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

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

什么好主意吗?


当前回答

我有这个问题,就像@Marc,只在一个特定的类。我发现我需要指定Open With = Java Editor。作为一个Eclipse新手,我甚至没有意识到我只是在使用纯文本编辑器。

在包资源管理器中,右键单击文件并选择“Open With”。

其他回答

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

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

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

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

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

如果你已经安装了谷歌工具栏的IE,可能你也会面临同样的问题。因为,工具栏捕获快捷键ctrl+空格。

以防有人到了绝望的地步,什么都不管用……对我们来说,内容帮助不知何故缩小,所以没有显示任何建议,只有“按Ctrl+空格,非java…”可以看到。 所以,这只是一个问题,拖动角落的内容协助扩大弹出。

我知道,很尴尬。希望能有所帮助。

注意:这是一个使用Eclipse Oxygen的Xfce4 Ubuntu服务器。

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

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

我在这里添加了一个答案,以防别人在谷歌上找到这个。相同的症状;不同的问题。对我来说,类型缓存已经损坏了。

从http://mschrag.blogspot.co.nz/2009/01/open-type-cant-find-your-class.html

退出Eclipse 进入workspace/.metadata/.plugins/org.eclipse.jdt.core 删除*。index和savedIndexNames.txt 重新启动Eclipse并搜索Ctrl+T以查找出错的类型。索引将被重新构建。