日食自动完成问题



我在Java中经常使用Eclipse的地图。例如

  Map<String, String> map = new HashMap<>();

然后,当我准备添加一些put时:

 String key = null;
 String value = null;
 // somewhere before the put, key and value get populated with Strings
 map.put(key, value);

问题是,每当我键入" map.put"时,Eclipse自动完成将其更改为" map.compute((",因此我必须编辑和删除" com"one_answers" e"one_answers" e"。

我看着窗口 ->首选项 -> java->编辑器 ->内容协助,但没有明显的内容。我想,我可以关闭所有内容辅助,但这就像"用沐浴水扔掉婴儿"。内容辅助过程中有很多有用的事情。

我的日食:

Eclipse IDE用于企业Java开发人员。版本:2018-12(4.10.0(构建ID:20181214-0600操作系统:Windows 10,v.10.0,x86_64/win32Java版本:1.8.0_144

我如何修复日食,以便像以前的版本一样做出正确的建议?

所提出的解决方案都不适合我。禁用"显示子字符串匹配"是什么解决的。(在Preferences -> Java -> Editor -> Content Assist中(。

应该认为这将破坏功能,只需键入所需参考的随机部分,例如打字"准备安排"不再导致OraclePreparedStatement。我不在乎的功能,但这显然是个人喜好的问题。

我认为,该选项的名称是一个微不足道的错误,因为子字符串方面仅适用于领导而不适用于落后内容。

更新:在Eclipse 2020-06中,不再有一个选项。取而代之的是"显示子字匹配",但即使在禁用时,键入map.put的建议仍然包括compute。至少在相关性而不是字母上排序时,在compute之前的建议中列出了put

窗口 ->首选项 java->编辑 ->内容辅助 ->高级

取消选中" Java提案(以任务为中心(",而是检查常规的" Java类型建议"为我解决了问题。我正在Windows 10上使用Eclipse for Enterprise Java开发人员2019-03。

这似乎是由于不幸删除从2018-12开始的'代码推荐人'的决定

'...不幸的是,代码推荐人不会进入2018-12。

https://bugs.eclipse.org/bugs/show_bug.cgi?id=542689

目前的解决方案是在市场上手动添加它。

Help -> Eclipse Marketplace -> Search for 'Code Recommenders'

无法保证它适用于Java 11 。

安装后,您必须:

  • 重新开始日食
  • 关闭"已安装的自动完成"信息页
  • 尝试一次自动完成一次,然后选择"自动完成启用"
  • 之类的顶部选项

最终再次尝试自动完成,这次应该按预期工作

更新:由于缺乏维护者,因此已存档了代码推荐程序。当您尝试下载它时,您将获得404。希望这是暂时的。

相关内容

  • 没有找到相关文章

最新更新