IntelliJ IDEA 2017.2 soll beim Umstieg auf Java 9 helfen

Auch wenn Java 9 voraussichtlich erst im September erscheinen wird, bietet die Entwicklungsumgebung einige Funktionen, die sich speziell der neuen Version widmen. Außerdem hat JetBrains den Debugger und die Codeanalyse erweitert.

In Pocket speichern vorlesen Druckansicht 45 Kommentare lesen
IntelliJ IDEA 2017.2 soll beim Umstieg auf Java 9 helfen
Lesezeit: 4 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

JetBrains hat ein frisches Release des vor allem auf Java-Entwickler zugeschnittenen IntelliJ IDEA veröffentlicht. Die Version 2017.2 der Entwicklungsumgebung widmet sich in einigen Punkten den Neuerungen von Java 9, das ursprünglich für Ende Juli vorgesehen war, nun aber erst Ende September erwartet wird.

Unter anderem geben die neu eingeführten Module Diagrams eine Übersicht über die Abhängigkeiten zwischen den in Projekten verwendeten Modulen und decken dabei auch die des Java Runtime Environment (JRE) ab. Entwickler können einzelne Module mit ihrer Verwendung und den Abhängigkeiten hervorheben. Außerdem gibt es einige Refactoring-Funktionen, die beim Umstieg auf die neuen Sprachfeatures helfen sollen. Die IDE bietet unter anderem an, Codeblöcke, die Sets mit vorgegebenen Werten füllen, durch das in Java 9 eingeführte Set.of( ... ) zu ersetzen. Außerdem kann sie while-Schleifen, die über volatile-Felder laufen, durch die Methode Thread.onSpinWait() ersetzen.

Die IDE hilft beim Refactoring zu Java SE 9.

(Bild: JetBrains)

Die IDE hilft auch an anderen Stellen beim Vereinfachen von Codepassagen. So kann sie ebenfalls bei Sets mehre .equals()-Aufrufe durch Set.contains() ersetzen. Außerdem haben die Macher die Unterstützung beim Verwenden der Reflection API sowie für Method Handler und Variable Handler verbessert.

Die Autovervollständiung sortiert nun auch verkettete Ausdrücke so, dass diejenigen oben stehen, die im aktuellen Projekt am häufigsten vorkommen. Falls dabei Methodenaufrufe Parameter verwenden, die im aktuellen Kontext nicht definiert sind, legt die IDE eine passende lokale Variable an. Das Feature funktioniert aktuell jedoch nur im Zusammenspiel mit Java und dem eingebauten Compiler.

Die statische Codeanalyse erkennt neuerdings, wenn Collection-Objekte zur Laufzeit stets leer sind oder der Zugriff auf einen char innerhalb eines Strings über charAt(int index) schon zur Compile-Zeit erkennbar dadurch zu Fehlern führen wird, wenn er jenseits der Länge des Strings oder auf einen leeren String erfolgt. Des Weiteren analysiert die IDE in diversen Methoden von List-, Set- und Map-Objekten, ob der Zugriff über Methoden wie get(), contains(), containsKey() und containsValue() im Kontext zu Laufzeitfehlern führt. Im Zusammenspiel mit Collections untersucht die Entwicklungsumgebung auf Probleme mit der null-Zulässigkeit (Nullability).

Der Debugger kann neuerdings die Ansicht auf Arrays und Collections unter Verwendung von Methoden wie startsWith() filtern. Ein Java Stream Debugger ist als separates Tool erhältlich und gibt einen Einblick in Stream-Operationen.

Der Debugger bietet eine Filterfunktion für Collections und Arrays.

(Bild: JetBrains)

Jenseits von Java bietet die IDE unter anderem für JetBrains JVM-Sprache Kotlin nun in Version 1.1.3 auch semantische Code-Hervorhebung, mit der sie unter anderem lokale Variablen in eigenen Farben anzeigt. Mit todo eingeschlossene Blöcke hebt sie ebenfalls hervor und zeigt sie im TODO-Fenster an

Im Zusammenspiel mit Gradle lassen sich nun Umgebungsvariablen innerhalb der Run Configuration setzen. Außerdem zeigt IntellliJ IDEA neuerdings einen Fortschrittsbalken beim Herunterladen. Das Fenster zum Definieren von Spring-Boot-Anwendungen hat nun einen zusätzlichen Reiter für die Health, Beans und Mappings Endpoints.

Mehr Infos

Java 2017

Mehr Informationen zu Java 9, Java EE 8 und aktuellen Entwicklungen im Java-Umfeld gibt es in dem iX-Developer-Sonderheft, das unter anderem im heise Shop erhältlich ist.

Weitere Neuerungen unter anderem im Zusammenspiel mit JUnit 5 lassen sich den Veröffentlichungshinweisen entnehmen. Sowohl die kostenlose Community- als auch die kommerzielle Ultimate-Edition von IntelliJ IDEA 2017.2 stehen auf der Download-Seite zum Herunterladen bereit. Seit Ende Mai ist der tschechische Toolhersteller JetBrains im Executive Committee des Java Community Process vertreten. Damit war er noch nicht an der Abstimmung beteiligt, die durch die anfängliche Ablehnung des Modulsystems zur jüngsten Verzögerung bei der Veröffentlichung von Java 9 führte, wohl aber am zweiten Anlauf, der das Modulsystem abgesegnet hat. (rme)