Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IntelliJ IDEA no code completion for Java 10 'var'?

Recently I installed the new version (2018.1) of IntelliJ IDEA, which added support for Java 10.

But when I trying to use the var (for local variable type inference), I found there was no var in the code completion list. (See the screenshot below)

If I continue typing, it will apply VarHandle as the first suggestion in that list. Then I have to undo that completion to restore var.

I have checked project settings, I use JDK 10 and the language level is also set to 10. Code like var number = 1; compiles well. And I couldn't find anything about this in IDE settings.

What am I doing wrong? I just want to use var declaration without interruption.

Code Completion

like image 604
Grant Howard Avatar asked Apr 08 '18 15:04

Grant Howard


2 Answers

As @Vic pointed out, this appears to be a bug. Until it gets fixed, you can create a custom live template as a workaround.

Create a live template triggered by the var abbreviation, then enter var as the template text. Make it available in the Java statement context.

Screenshot

like image 116
Mike Strobel Avatar answered Oct 22 '22 22:10

Mike Strobel


Issue has been fixed in upcoming IntelliJ IDEA 2018.2 release:

https://www.jetbrains.com/idea/nextversion/ (currently EAP version)

like image 38
Mikhail Kholodkov Avatar answered Oct 22 '22 22:10

Mikhail Kholodkov