Das ist neu in IntelliJ IDEA 2022.1

IntelliJ IDEA 2022.1 erleichtert mit dem Dependency Analyzer die Verwaltung von Abhängigkeiten und die Lösung von Konflikten, vereinfacht mit einem überarbeiteten New Project-Assistenten die Erstellung neuer Projekte und bietet mit dem Notifications-Toolfenster einen verbesserten Überblick über die Benachrichtigungen der IDE. Darüber hinaus haben wir eine Reihe weiterer Verbesserungen vorgenommen, die wir Ihnen im Folgenden detailliert vorstellen möchten.

Wichtige Updates

Dependency Analyzer

Dependency Analyzer

Der neu eingeführte Dependency Analyzer bietet umfangreiche Informationen über alle in Ihren Projekten und Unterprojekten verwendeten Maven- und Gradle-Abhängigkeiten. Dadurch können Sie Abhängigkeitskonflikte erkennen und beheben, identische Abhängigkeiten herausfiltern und ihre Präsenz in unterschiedlichen Bibliotheken prüfen sowie unkompliziert zwischen allen Abhängigkeiten navigieren, um Build-Konfigurationen zu korrigieren.

Verbesserter Projektassistent

Wir haben die Benutzerführung des New Project-Assistenten überarbeitet, um die Projekterstellung zu vereinfachen. Sie können in Sekundenschnelle ein leeres Projekt starten, die vorkonfigurierten Optionen für Java, Kotlin, Groovy und JavaScript verwenden oder für komplexere Projekte Generatoren nutzen.

Neues Notifications-Toolfenster

Neues Notifications-Toolfenster

Das Event Log wurde durch das neue Notifications-Toolfenster ersetzt. In diesem separaten Toolfenster werden wichtige und hilfreiche Empfehlungen und Benachrichtigungen deutlicher hervorgehoben und besser strukturiert. Weitere Details finden Sie im entsprechenden Blogbeitrag.

Benutzererfahrung

Maven Archetype im Projektassistenten

Der aktualisierte Projektgenerator für Maven Archetype im New Project-Assistenten bietet eine während der Eingabe aktualisierte Direktsuche nach Archetypen, die Möglichkeit, einen Archetyp-Katalog im Zuge der Modulerstellung zu verwalten, sowie die Möglichkeit, erforderliche Eigenschaften nach Archetyp einzugeben.

Verbesserte Inlay-Hinweise

Die Code-Vision-Funktionalität, die Ihnen direkt im Editor nützliche Informationen zu Ihrem Code bereitstellt, wurde um weitere Inlay-Hinweise erweitert. Die Liste der angezeigten Informationen umfasst jetzt Vererbungen, Verwendungen, Autorenschaft und zugehörige Probleme. Die Informationen sind jetzt alle standardmäßig aktiviert und können in den Einstellungen unter „Inlay Hints“ geändert werden. Die Einstellungen selbst wurden ebenfalls überarbeitet und erleichtern die Konfiguration mit einer neuen Bedienoberfläche.

Gleichmäßige Tab-Breite

Jetzt haben Sie die Möglichkeit, den Arbeitsbereich so auf die Editor-Tabs aufzuteilen, dass diese die gleiche Breite haben. Die dazugehörige Einstellung lautet Settings / Preferences | Advanced Settings | Editor Tabs | Equalize proportions in nested splits.

UML-Diagramme in andere Formate exportieren

UML-Diagramme in andere Formate exportieren
Ultimate

UML-Diagramme können jetzt in den Formaten yEd (.graphml), JGraph (.drawio), Graphviz bzw. Graphviz mit Positionen (.dot), Mermaid (.md), Plantuml und IntelliJ IDEA (.uml) exportiert werden, um die Kompatibilität mit Drittanbieter-Tools zu gewährleisten.

Neuer Dialog für strukturelles Suchen und Ersetzen

Der Dialog Structural Search und Replace enthält jetzt eine Liste aller Vorlagen, um die Navigation zwischen ihnen zu vereinfachen. Außerdem kann der Dialog durch Anklicken eines Symbols angeheftet werden, und die Kontrollkästchen Injected code und Match case wurden neu angeordnet.

Sicherheit

Plugin „Package Checker“
Ultimate

IntelliJ IDEA 2022.1 can now detect vulnerabilities in Maven and Gradle dependencies used in your projects by checking across the Checkmarx SCA Database and the National Vulnerability Database, thanks to the Package Сhecker plugin that is bundled with IntelliJ IDEA Ultimate.

Erfahren Sie mehr darüber in diesem Blogbeitrag.

Editor

Ausführung von Befehlen in Markdown-Dateien

Ausführung von Befehlen in Markdown-Dateien

Wenn Sie mit Markdown-Dateien arbeiten, die Befehle enthalten, können Sie diese mithilfe des Ausführen-Symbols in der Randleiste direkt aus der Datei heraus ausführen.

Codeabschnitt in Markdown-Dateien kopieren

Codeabschnitt in Markdown-Dateien kopieren

Mit der neuen Aktion Copy code snippet in Markdown-Blöcken können Sie Inhalte mit einem einzigen Klick in die Zwischenablage kopieren.

Schwebende Symbolleiste des Markdown-Editors aktualisiert

Die überarbeitete Symbolleiste ermöglicht die Erstellung von Listen und bietet ein Dropdown-Menü zur Auswahl von Überschriftenstilen. Die Symbolleiste kann angepasst werden, sodass Sie die Optionen aufnehmen können, die Sie benötigen.

Code-Neuformatierung im LightEdit-Modus

Code-Neuformatierung im LightEdit-Modus

Wir haben den LightEdit-Modus erweitert, um Ihnen noch mehr Möglichkeiten zu bieten, ohne dass Sie ein Projekt erstellen oder öffnen müssen. Ab sofort können Sie Ihren Code auch im projektfreien Modus neu formatieren.

Inspektion für Formatierungsfehler

Inspektion für Formatierungsfehler

Die neue Inspektion Incorrect formatting informiert Sie, wenn die aktuelle Formatierung einer Datei nicht mit Ihren Codestil-Einstellungen übereinstimmt.

Verbesserte Formatierung

Um eine einheitliche Formatierung Ihres Codes zu gewährleisten, haben wir die Option Add a space at line comment start um das Kontrollkästchen Enforce on reformat erweitert, das standardmäßig aktiviert ist. Die Option ist standardmäßig für Java, Kotlin und Groovy verfügbar und greift nur bei Zeilenkommentaren ein, die mit alphanumerischen Zeichen beginnen.

Probelaufmodus im Befehlszeilen-Formatierer

Der Befehlszeilen-Formatierer unterstützt einen „dry run“-Modus zur Validierung von Projektdateien. Wenn eine Datei formatiert werden muss, wird die Ausführung mit einem von null abweichenden Status beendet.

Java

Java-18-Unterstützung

IntelliJ IDEA 2022.1 unterstützt neue Sprachmerkmale aus Java 18, das im März 2022 veröffentlicht wurde. Die IDE unterstützt jetzt Code-Snippets, das geänderte Pattern-Matching für Switch-Ausdrücke und einiges mehr. Einzelheiten finden Sie in diesem Blogbeitrag.

Java-Decompiler

Die Kompatibilität des Java-Decompilers mit Java 17 wurde verbessert. Er unterstützt moderne Konstruktoren, zum Beispiel Sealed-Typen und Pattern-Matching, verbessert die „Switch-over-String“-Dekompilierung, bietet Typ-Annotationen und erkennt gängige Konstanten.

Verbesserte JUnit-5-Unterstützung

Wir haben Unterstützung für die in JUnit 5.7 eingeführten Neuerungen hinzugefügt, darunter die Annotationen @EnabledIf/DisabledIf, @NullSource/EmptySource und @TempDir.

Vorlage „Surround with try/catch“ aktualisiert

Vorlage Surround with try/catch aktualisiert

Die aktualisierte Vorlage Surround mit try/catch reicht Ausnahmen jetzt in eine RuntimeException gehüllt weiter, statt sie zu verschlucken.

Kotlin

Unterstützung für Kotlin 1.6.20

IntelliJ IDEA 2022.1 unterstützt Kotlin 1.6.20 inklusive der neuesten Sprachmerkmale wie paralleles Kompilieren, Context-Receiver-Prototyp und verbesserte gemeinsame Nutzung von Code über alle Kotlin-Zielplattformen hinweg. Weitere Informationen über die neuen Kotlin-Updates erhalten Sie in diesem Blogbeitrag.

Verbesserte IDE-Performance für Kotlin

Durch die Optimierung der Paketindizes wurde die Geschwindigkeit der IDE bei der Code-Completion, der Syntaxhervorhebung und bei Vorgängen im Zusammenhang mit der Referenzsuche deutlich erhöht. Auch die Anzahl und der Umfang von Neuindizierungen nach Codeänderungen wurden verringert.

Verbesserungen im Debugger

Wir haben die Funktionalität Smart Step Into beim Debuggen von Kotlin-Projekten um einige nützliche Verbesserungen und Updates erweitert. Darüber hinaus wurden mehrere Probleme mit Haltepunkten gelöst.

Integration des Kover-Plugins

To ensure better Kotlin code coverage, the Kover plugin has been integrated with IntelliJ IDEA.

Groovy

Plugin „Package Checker“

Postfix-Vorlagenunterstützung für Groovy

Die Code-Completion für Groovy unterstützt jetzt die meisten von Java bekannten Postfix-Vorlagen wie arg, cast, for, iter, nn, notnull, null, not, throw, try, var, par, sout, serr, while, new, reqnonnull und return.

Frameworks und Technologien

Unterstützung für Go-Microservices
Ultimate

IntelliJ IDEA Ultimate unterstützt jetzt Go-Microservices und stellt Features wie URL-Pfadreferenzen, Endpunkte, Search Everywhere und Randleistensymbole bereit. Die Nutzung setzt die Installation des Go-Plugins voraus und ist derzeit auf die Funktionen der Standardbibliothek beschränkt. Weitere Einzelheiten finden Sie hier.

Verbesserte Codeanalyse für Spring Data Mongo
Ultimate

Bei der Arbeit mit Spring Data MongoDB hebt IntelliJ IDEA jetzt JSON-Abfragen hervor, vervollständigt Operatoren und Dokumentenfelder und bietet Navigationsfunktionen von gemappten Entitäten zum Database-Toolfenster.

Bessere Unterstützung für .proto-Dateien

Bessere Unterstützung für .proto-Dateien
Ultimate

Eine neue Intention-Aktion für .proto-Dateien fügt bei unaufgelösten Message-Referenzen fehlende Importanweisungen hinzu. Nach Ergänzung der fehlenden Importanweisungen bietet die IDE Completion-Vorschläge für Message-Referenzen.

Unterstützung für gRPC-Reflexion

Unterstützung für gRPC-Reflexion
Ultimate

Mit IntelliJ IDEA Ultimate können Sie jetzt Anfragen ausführen und Completion-Vorschläge für Service- und Methodennamen direkt aus einer laufenden Serverinstanz erhalten. The project does not need to contain .proto files, but the server should support gRPC reflection.

Verbesserte Thymeleaf-Unterstützung

Verbesserte Thymeleaf-Unterstützung
Ultimate

IntelliJ IDEA Ultimate bietet jetzt eine verbesserte Unterstützung für Thymeleaf: Inspektionen geben seltener falsch positive Ergebnisse zurück, die IDE-Performance bei der Bearbeitung von Thymeleaf-Vorlagen wurde verbessert, und die Inspektions- und Hervorhebungsstufen wurden optimiert, um Ihnen das richtige Maß an Informationen zu bieten.

Completion in Helidon-Konfigurationsdateien
Ultimate

Das Helidon-Framework wird jetzt in IntelliJ IDEA Ultimate besser unterstützt. Die IDE vervollständigt jetzt Konfigurationsschlüssel in Properties- und .yaml-Dateien und unterstützt die Aktionen Go to Declaration und Quick Doc.

Build-Tools

Fortschrittsanzeige für Gradle

Fortschrittsanzeige für Gradle

Wir haben eine Fortschrittsanzeige für Gradle-Prozesse wie das Herunterladen von Abhängigkeiten und den Import von Artefakten eingeführt. Damit können Sie Dateivorgänge genau nachvollziehen und die voraussichtliche Dauer abschätzen.

Unterstützung für separate Testmodule im Maven-Compiler-Plugin

Unterstützung für separate Testmodule im Maven-Compiler-Plugin

Wir haben das Maven-Compiler-Plugin mit einer experimentellen Funktionalität ausgestattet. Sie können jetzt das genaue Sprachniveau für Produktions- und Testcode separat festlegen. Diese Option kann unter Preferences/Settings | Build, Execution, Deployment | Build Tools | Maven | Importing aktiviert werden.

VCS

Informationen zu Autorenschaft in Inlay-Hints

Informationen zu Autorenschaft in Inlay-Hinweisen

Wir haben die Code-Vision-Funktionalität erweitert: In IntelliJ IDEA können Sie jetzt ohne Umwege feststellen, wer gemäß VCS-Verlauf einen bestimmten Codeabschnitt geschrieben hat. Die Code Author-Inlay-Hinweise sind unter Preferences / Settings | Editor | General | Inlay Hints | Code Vision standardmäßig aktiviert.

Annotate with Git Blame aktualisiert

Annotate with Git Blame aktualisiert

Wir haben die Funktionalität von Annotate with Git Blame verbessert, um die Untersuchung von Änderungen zu erleichtern. Die IDE färbt den Unterschied zwischen den Zeilen direkt im Editor ein, wenn sich die Maus über einer Annotation befindet, und beim Anklicken wird das Git-Log-Toolfenster geöffnet.

Aktualisierte Commit-Details im Git Toolfenster

Aktualisierte Commit-Details im Git-Toolfenster

Die Commit-Details umfassen jetzt Informationen zu GPG-Signaturen und Build-Status. Zuvor wurden diese Daten nur als Spalte im Git-Log angezeigt.

Git File History: neue Bedienoberfläche ohne Index

Git File History: neue Bedienoberfläche ohne Index

Die neue Bedienoberfläche für das Toolfenster Git File History ist jetzt unabhängig vom Indizierungsprozess. Die Daten werden in einer neuen Oberfläche dargestellt, auch wenn der Logindex ausgeschaltet ist.

Änderungsvorschläge in Pull-Request-Kommentaren

Änderungsvorschläge in Pull-Request-Kommentaren

IntelliJ IDEA erleichtert Ihnen das Arbeiten mit Änderungsvorschlägen, da Sie Änderungen jetzt lokal in der IDE anwenden oder als Commit festschreiben können.

Auswahl externer Diff- und Merge-Tools nach Dateityp

Auswahl externer Diff- und Merge-Tools nach Dateityp

IntelliJ IDEA 2022.1 bietet jetzt die Möglichkeit, je nach Dateityp unterschiedliche externe Diff- und Merge-Tools zu verwenden. Die Konfiguration erfolgt unter Settings / Preferences | Tools | Diff & Merge | External Diff Tools.

Profiler

Einheitliche Profiler-Konfiguration basierend auf Async Profiler
Ultimate

Wir haben die neue Profiler-Konfiguration IntelliJ Profiler implementiert. Damit kombinieren wir die Leistungsfähigkeit des Async Profiler und des Java Flight Recorder und kommen dem Ziel näher, ein einziges, allumfassendes Profiling-Tool für alle Plattformen zu implementieren.

Debugger

Frame zurücksetzen

Frame zurücksetzen

Im Frames-Bereich des Debugger-Toolfensters haben wir die Aktion Drop Frame von der Symbolleiste entfernt und sie stattdessen in Form eines Inline-Symbols Reset Frame zugänglich gemacht.

Ausgeblendete Tab-Beschriftungen

Ausgeblendete Tab-Beschriftungen

Um den nutzbaren Bereich im Debugger-Toolfenster zu maximieren, werden die Tab-Beschriftungen jetzt standardmäßig ausgeblendet. Um sie wieder einzublenden oder ihre Position zu ändern, verwenden Sie die Option Show Tab Labels unter Layout Settings.

QA-Tools

Verbesserter Seitenobjekt-Editor

Der Page Object Editor im Plugin Selenium UI Testing wurde umfassend verbessert. Wir haben den Workflow optimiert und die Bedienoberfläche überarbeitet, um Ablenkungen zu minimieren. Sie können ohne Umwege Seitenelemente aus der Webseite in den Code einfügen und dann die Bearbeitung fortsetzen, ohne den Page Object Editor zu verlassen. Wenn Sie dem Code ein neues Seitenelement hinzufügen, haben Sie außerdem die Möglichkeit, den zu verwendenden Selektortyp auszuwählen.

Neuer Page Object-Assistent

Mit dem neuen Page Object-Assistenten können Sie beim Anlegen einer neuen Seitenobjekt-Klasse die Sprache und das Testautomatisierungs-Framework auswählen. Außerdem steht Ihnen der Assistent jetzt an allen Stellen in Ihrem Code zur Verfügung, an denen eine Abhängigkeit von der Selenium-Bibliothek vorhanden ist. Wenn Sie die automatische Generierung von Seitenobjekten mit unterschiedlichen Frameworks und angepassten Vorlagen ausprobieren möchten, ohne eine neue Datei anzulegen, steht Ihnen dazu ein spezieller Playground-Modus unter Tools | Open Selenium Page Object Playground zur Verfügung.

Kubernetes

Ressourcen im Cluster bearbeiten

Ressourcen im Cluster bearbeiten
Ultimate

Das Ändern von aus dem Cluster geladenen Ressourcen kann jetzt im Editor-Tab erfolgen.

Benutzerdefinierter Pfad zu kubectl

Benutzerdefinierter Pfad zu kubectl
Ultimate

Sie können den Pfad zu kubectl manuell konfigurieren, wenn das Programm sich nicht am Standard-Speicherort befindet. Um den benutzerdefinierten Pfad anzugeben, gehen Sie zu Settings/Preferences | Build, Execution, Deployment | Kubernetes | Path to kubectl executable.

Aktion für Portweiterleitung in Services-Ansicht

Aktion für Portweiterleitung in Services-Ansicht
Ultimate

Für Pods ist jetzt eine Port-Weiterleitungsfunktion verfügbar. Um Ports weiterzuleiten, können Sie entweder das Symbol in der Symbolleiste verwenden oder den entsprechenden Eintrag im Kontextmenü auswählen.

Aktion Describe Resource in Services-Ansicht

Aktion Describe Resource in Services-Ansicht
Ultimate

Es gibt eine neue Aktion Describe Resource für alle Ressourcen in der Services-Ansicht. Sie können sie über das Kontextmenü aufrufen oder die Schaltfläche in der Symbolleiste anklicken.

Event-Unterstützung in Clustern
Ultimate

Cluster-Ereignisse werden jetzt in einem separaten Knoten in der Services-Ansicht angezeigt, um Ihnen einen Überblick über die jüngsten Ereignisse im System zu bieten. Um die Ereignisse eines bestimmten Pods zu sehen, rufen Sie Describe Resource für den Pod auf und sehen Sie sich im Ergebnis den Abschnitt Events an.

Unterstützung für Werf
Ultimate

Wir haben eine begrenzte Editor-Unterstützung für werf.yaml und zugehörige Helm-Template-Dateien eingeführt, einschließlich Code-Completion, Inspektionen, Quick-Fix-Vorschläge, Refactoring/Umbenennung für .Values.werf.image.* und Validierung einiger Felder wie boolean und int.

Import untergeordneter Werte in Helm

Import untergeordneter Werte in Helm
Ultimate

IntelliJ IDEA Ultimate bietet jetzt Unterstützung für den Import untergeordneter Werte über import-values-Einstellungen. Dies wirkt sich bei Builtin-Objekten in Templates auf die Completion und Navigation aus.

Docker

Überarbeitete Services-Ansicht

Überarbeitete Services-Ansicht

Im Services-Toolfenster von IntelliJ IDEA 2022.1 wurde die Docker-UI umfassend überarbeitet. Die Überarbeitung erstreckt sich auf Container, Images, Netzwerke und Volumes.

Unterstützung für Docker-Compose-Targets

Docker-Compose-Targets werden jetzt unterstützt. Um beispielsweise eine Spring-Boot-Anwendung auf einem Compose-Target auszuführen, öffnen Sie die Run-Konfiguration, erstellen Sie in Manage targets ein Compose-Target und führen Sie die Anwendung aus.

Unterstützung für Docker Registry V2

Unterstützung für Docker Registry V2

Bei Verwendung von Docker 1.6+ wird die Docker Registry HTTP API V2 unterstützt. Sie können einfache oder passwortgeschützte Docker-V2-Registries anlegen und alle üblichen Aktionen ausführen, z. B. Anzeige, Push und Pull von Images.

Remote-Entwicklung

Mehr Einstellungen für Remote-Server
Ultimate

Die Remote-Entwicklung wird jetzt durch das Widget Backend Control Center unterstützt, das die CPU- und Speicherauslastung, die Festplattenkapazität und andere Parameter anzeigt, die Sie zur Überwachung des Backend-Status benötigen.

Mit einer neuen Sicherheitseinstellung können Sie jetzt die Weiterleitung von SSH-Schlüsseln verwenden, um den Zugriff auf Git-Repositories von Ihrem Remote-System aus zu authentifizieren. Alternativ können Sie auch das SSH-Agent-Hilfsprogramm verwenden.

Sie können jetzt den Downloadpfad und den genauen Speicherort für das IDE-Backend auf Ihrem Remote-System vorgeben.

Neue Funktionen im lokalen Thin-Client

Neue Funktionen im lokalen Thin-Client
Ultimate

Der JetBrains Client unterstützt jetzt mehr Dateieditoren, sodass Sie nicht nur Textdateien, sondern auch PNG-Bilder, UML-Diagramme, Jupyter-Notebook-Dateien und Android-Layoutressourcen bearbeiten können.

Im Randleistenmenü haben wir Run with coverage sowie ein Profiler-Fenster hinzugefügt. Das Kontextmenü enthält jetzt das Maven- und Gradle-Toolfenster und es wurden einige weitere hilfreiche Untermenüpunkte hinzugefügt.

Wir haben auch die Debugging-Funktionen verbessert und mehrere Aktionen bereitgestellt, die Ihnen bei der Remote-Entwicklung die Untersuchung Ihres Codes erleichtern.

Datenbank-Tools

Mehrere Objekte kopieren

Mehrere Objekte kopieren
Ultimate

Sie können jetzt mehrere Tabellen auswählen und in ein anderes Schema kopieren. Wählen Sie die Tabellen aus und drücken Sie F5, um den Exportdialog zu öffnen. Wenn Sie eine einzelne Tabelle exportieren, können Sie die Spalten zuordnen und die DDL der neuen Tabelle ansehen und gegebenenfalls ändern.

Die IDE unterstützt den Export zwischen unterschiedlichen Datenbanksystemen. Das Zielschema kann sich also in jeder beliebigen Datenbank in Ihrem Projekt befinden. Weitere Informationen dazu finden Sie in diesem Blogartikel.

MongoDB: Bearbeiten von Feldern in Ergebnissen

MongoDB: Bearbeiten von Feldern in Ergebnissen
Ultimate

Jetzt können Sie Ergebnisse in MongoDB-Collections genauso einfach bearbeiten wie in relationalen Datenbanken. Auch Ergebnismengen, die Sie über .find() erhalten, lassen sich jetzt bearbeiten. Dies funktioniert selbst dann, wenn Cursor-Methoden, die das Ergebnis verändern, wie sort() oder limit(), nach .find() ausgeführt wurden.

Abbrechen laufender Statements

Abbrechen laufender Statements
Ultimate

Die Logik zum Abbrechen laufender Statements wurde aktualisiert. Es ist jetzt klar zu erkennen, dass die Anfrage abgebrochen wird. Außerdem werden Datenquellen nicht mehr ohne Warnung deaktiviert. Weitere Informationen bietet Ihnen dieser Blogbeitrag.

Verbindungsabbruch ohne Deaktivierung der Datenquelle

Verbindungsabbruch ohne Deaktivierung der Datenquelle
Ultimate

Jetzt können Sie den Prozess des Verbindungsaufbaus stoppen, ohne die Datenquelle zu deaktivieren. Wenn Sie auf Cancel klicken, während die Verbindung hergestellt wird, wird der Verbindungsaufbau gestoppt, und die Meldung Connection canceled wird angezeigt. Weitere Informationen zu diesem Update finden Sie in diesem Blogbeitrag.

Webentwicklung

Erweiterte Next.js-Unterstützung

Erweiterte Next.js-Unterstützung
Ultimate

Dank der integrierten React-Unterstützung konnten Sie in Ihren Next.js-Projekten alle wichtigen Funktionalitäten bisher schon nutzen. IntelliJ IDEA 2022.1 fügt Unterstützung für einige Framework-spezifische Aspekte hinzu – z. B. Seiten. Die IDE löst jetzt Pfade auf, die in der href-Eigenschaft von Link-Komponenten, in Formularen oder anderen Tags verwendet werden. Die Code-Completion, die Navigation im Code und das Refactoring funktionieren ebenfalls.

Volta-Unterstützung

Volta-Unterstützung
Ultimate

In diesem Release haben wir die Integration mit dem JavaScript-Toolmanager Volta verbessert. IntelliJ IDEA 2022.1 erkennt jetzt automatisch Yarn und npm, wenn sie mit Volta installiert wurden.

Scala

Verbesserte Scala-3-Unterstützung

Verbesserte Scala-3-Unterstützung

Für extension-Methoden steht jetzt Auto-Completion zur Verfügung. Außerdem bietet der Editor an, extension-Methoden und given-Instanzen automatisch zu importieren. Neue Inspektionen für den infix-Modifikator und die @targetName-Annotation helfen Ihnen, einen einheitlichen Codestil beizubehalten. Wir haben die Performance des .tasty-Readers erheblich verbessert, sodass die Indizierung von Scala-3-Bibliotheken jetzt bis zu doppelt so schnell erfolgt.

Neuer Scala-Projektassistent

Neuer Scala-Projektassistent

Sie können neue Scala-Projekte jetzt noch einfacher konfigurieren. Im überarbeiteten New Project-Assistenten können Sie in einem einzigen Schritt ein Projekt-JDK, das gewünschte Build-System und die Scala-Version auswählen.

Alias-Export

Alias-Export

Aliasnamen sind in Scala allgegenwärtig – zum Beispiel String, Seq, List, Set und Map. Dies hat Auswirkungen auf die Syntaxhervorhebung, GoTo, die Schnelldokumentation, Schnelldefinitionen, die Verwendungssuche, die Importoptimierung und weitere IDE-Funktionen, da diese sich auf die Aliasnamen statt auf die tatsächlichen Definitionen beziehen. Um die Benutzererfahrung zu verbessern, behandelt der Editor Aliasnamen in der Standardbibliothek jetzt als transparente Exporte, sodass zum Beispiel List scala.collection.immutable.List impliziert und nicht scala.List.

Inspektion für ungenutzte Deklarationen

Inspektion für ungenutzte Deklarationen

Die Erkennung von ungenutzten Deklarationen war bisher auf private-Bindings beschränkt. Die Inspektion Unused declaration unterstützt jetzt auch public-Bindings, die durch Klassen, Methoden, Variablen, Parameter usw. eingeführt werden.

Inlay-Hints für Ranges

Scala-Debugger verbessert

Wir haben in dieser Version den Scala-Debugger überarbeitet und optimiert. Wir haben die Handhabung von object, primären Konstruktor-Parametern, Werteklassen, Array, lazy val und Collection verbessert sowie die Auswertung von Ausdrücken optimiert.

Space-Integration

Code-Review-Kommentare veröffentlichen oder als Entwurf speichern

Code-Review-Kommentare veröffentlichen oder als Entwurf speichern

Beim Überprüfen von Codeänderungen in der IDE können Sie jetzt auswählen, wann der Code-Review-Kommentar veröffentlicht werden soll.

  • Mit Post Now wird der Kommentar sofort im Code-Review veröffentlicht, und der Autor sowie die anderen Teilnehmer des Code-Reviews werden umgehend benachrichtigt.
  • Mit Save as Draft können Sie die Kommentare sammeln und in einem Rutsch veröffentlichen, etwa wenn die Änderung genehmigt oder eine Antwort eingetroffen ist.

For more details, check out this blog post.

Tastenkürzel für Code-Reviews

Tastenkürzel für Code-Reviews

Um die Benutzererfahrung bei Code-Reviews zu verbessern, werden jetzt relevante Tastenkürzel angezeigt. Wenn Sie einen Code-Review-Kommentar schreiben, können Sie mit Enter eine neue Zeile hinzufügen. Mit Strg+Enter wird der Kommentar gespeichert oder veröffentlicht.