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

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

什么好主意吗?


当前回答

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

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

其他回答

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

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

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

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

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

对我来说,这个问题是同一个库的几个版本之间的冲突。Eclipse助手使用的是比maven更老的版本。

我必须到.m2目录删除不需要的lib版本+重新启动eclipse。

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

从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以查找出错的类型。索引将被重新构建。

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