IntelliJ中的智能提示功能不再起作用

62

我当前正在运行IntelliJ IDEA 13.1。在运行IntelliJ 13时,智能感知/自动完成停止工作了。我尝试升级,但仍然不起作用。

我可以使用ctrl+space显式调用代码完成。我查看了设置->编辑器->代码完成,没有发现异常。还有其他地方可以开启/关闭此功能吗?


这对我有用 https://dev59.com/_1IG5IYBdhLWcg3wpDFk - yu yang Jian
23个回答

184

问题出在我没有标记一个名为 "Source Root" 的文件夹(它会以蓝色显示)。

要解决这个问题,右键单击你的根源代码目录-> 标记为 -> 源根目录。


15
这对我的情况非常有帮助!不知什么原因,在我做这件事之前,IntelliJ甚至没有为标准库类提供代码补全功能。 - quezak
3
在我的情况下,它是蓝色的(!),但在我的完美代码中仍然显示了许多红线。为了解决这个问题,我不得不取消标记,然后重新标记-修复它 ;) - Li3ro
2
我本来是将其标记为源根目录并将其设置为蓝色,然后它就可以工作了。谢谢! - user1769790
4
这也帮助我修复了我的测试! - ermish
2
你是一个救星! - AnkitG
显示剩余2条评论

77

请检查是否意外打开了省电模式(文件/省电模式)。我自己刚刚发现,文件/省电模式会关闭它。我也遇到了同样的问题,可能是不小心把省电模式设置为开启。


2
谢谢!文件/省电模式不知何故被打开了。我取消了它,所有在IDE中工作的美妙功能都恢复了。 - earthling
哎呀,这解决了我在一个非常大的项目中工作时忘记自己创建的问题。 - undefined

12
我使用的是Mac电脑,当我升级到Big Sur系统后,我的智能提示功能停止工作了。
这是因为Big Sur拥有一个输入源快捷键。禁用Mac快捷键将会使智能提示功能重新生效。
您可以在Mac中看到禁用选项: enter image description here

谢谢,工作完美(Mac 12.6)。 - Bilal

8

文件 -> 设置 -> 编辑器 -> 通用 -> 代码完成 -> 自动弹出代码完成


6

我尝试了上述所有选项,但都未解决问题。在我的情况下:

问题:项目的文件结构中未加载 node_modules。

解决方案:进入资源管理器(finder / nautilus),找到项目中的 .idea 文件夹并将其删除。然后重新导入项目。重新导入项目后,它会将 node_modules 文件夹加载为 library root

注意:IntelliJ 需要几秒钟来索引所有库。您会在右下角看到一个加载器,靠近行号信息。


5
如果其他提到的选项对您已经适用,请尝试将Sources/Test文件夹设置为Sources Root/Test Sources。这对我很有效,因为我忘记了它。
右键单击文件夹,选择“标记目录为”测试源或源根,或者其他适用的选项。 :)

5

尝试禁用您所有的插件。我安装了Codota,结果发现它是垃圾。我卸载了它并在IntelliJ中禁用了该插件,然后它就可以工作了。


1
我从Github上添加了_ideavimrc文件。它的按键绑定在我的情况下被覆盖了。 - s1n7ax
@s1n7ax 在我的情况下确实是这样。我为此添加了另一个答案!谢谢! - ifnotak
谢谢,对我来说是这个:https://plugins.jetbrains.com/plugin/15071-flutter-snippets - Jason Landbridge

4

我曾经遇到过同样的问题,但这些方法都没有帮助我。后来我发现在Mac上,control + space被操作系统用于切换语言输入,这将覆盖Intellij的快捷键。因此,如果你在Mac上使用多种输入语言,请考虑更改快捷键 :)


2

遇到了同样的问题,直到:

  1. 安装第三方JDK
  2. 在模块设置中配置:右键单击项目名称,然后选择“打开模块设置” -> SDKs -> “+”。选择jdk根文件夹,Idea会自动处理其余部分。
  3. 重新索引一些内容。这是自动发生的,请耐心等待。

1
我之前一直使用IntelliJ自带的JDK,但是当我切换到其他JDK(例如openJdk)后,自动补全功能又恢复正常了。 - BigRedBettaFish

2
在我的情况下,我重新启动了Intellij,一切恢复正常。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接