【问题标题】:IntelliJ IDEA no code completion for Java 10 'var'?IntelliJ IDEA 没有 Java 10 'var' 的代码完成?
【发布时间】:2018-09-18 01:07:13
【问题描述】:

最近安装了IntelliJ IDEA的新版本(2018.1),增加了对Java 10的支持。

但是当我尝试使用var(用于局部变量类型推断)时,我发现代码完成列表中没有var。 (见下面的截图)

如果我继续输入,它将应用VarHandle 作为该列表中的第一个建议。然后我必须撤消该完成以恢复var

我检查了项目设置,我使用 JDK 10,语言级别也设置为 10。var number = 1; 之类的代码编译得很好。而且我在 IDE 设置中找不到任何关于此的内容。

我做错了什么?我只想不间断地使用var 声明。

【问题讨论】:

  • 听起来像一个错误。我的建议是为var 添加一个实时模板,该模板简单地扩展回var。这是一个 hack,但您可以在问题解决后将其删除。
  • @MikeStrobel 模板破解有效,感谢您的建议!
  • 您尝试过最新的 EAP 吗?
  • 如果我的 IDE 将按 space 解释为“插入一些单词”而不是“插入 space”,那我真的很烦。但我非常有信心 IntelliJ 还可以选择使用不同的键(例如 enter)而不是 space 来完成,以允许插入 space i> 当按 space 时(假设你不想“完成”varvar)…

标签: java intellij-idea code-completion java-10


【解决方案1】:

正如@Vic 指出的,这个appears to be a bug。在它得到修复之前,您可以创建自定义实时模板作为解决方法。

创建一个由var 缩写触发的实时模板,然后输入var 作为模板文本。使其在 Java 语句上下文中可用。

【讨论】:

    【解决方案2】:

    Issue 已在即将发布的 IntelliJ IDEA 2018.2 版本中修复:

    https://www.jetbrains.com/idea/nextversion/(当前 EAP 版本)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-08
      • 2020-06-16
      • 2014-10-20
      • 2016-06-10
      • 1970-01-01
      • 2012-05-15
      • 2012-12-17
      相关资源
      最近更新 更多