JetBrains a publié IntelliJ IDEA 2022.1 qui introduit l'analyseur de dépendance pour fournir des informations et améliorer la base de code. Les améliorations de la convivialité et de la productivité incluent des indications incrustés, l'exécution de commandes à partir de fichiers Markdown et un débogage et un profilage améliorés.
La nouvelle fonctionnalité Dependency Analyzer donne un aperçu des dépendances du projet. Diverses nouvelles actions sont disponibles, telles que Analyze Dependencies :
L'action Analyze Dependencies permet aux développeurs de spécifier la portée de l'analyse en sélectionnant les fichiers à inclure pour la profondeur de Maven transitive dependencies :
Le résultat de l'analyse est affiché et inclut les dépendances de la classe CarController
sur diverses classes de bibliothèque telles que String
de Java lui-même et RestController
de Spring Framework. Outre les bibliothèques, la classe CarController
dépend également de la classe de production CarService
.
La sélection d'une classe sur la droite, telle que CarService
, affiche les utilisations de cette classe dans la classe CarController
sélectionnée à gauche. Cet aperçu est configurable, par exemple en sélectionnant Show Read Access ou Show Write Access.
L'action Analyze Cyclic Dependencies détecte automatiquement les cycles, par exemple entre les classes dans les packages. L'exemple montre la classe CarService
du package com.example.demo
en fonction de Utils
du package com.example.utils
:
Inversement, Utils
du package com.example.utils
dépend de la classe DemoApplication
du package com.example.demo
:
La fenêtre de l'outil Notification remplace l'Event Log et affiche les suggestions d'amélioration et les actions terminées :
JetBrains a amélioré l'assistant New Project pour faciliter la création de nouveaux projets et une meilleure prise en charge de l'utilisation de l'archétype Maven :
Les indications incrustés (Inlay hints), inheritors, usages, code authors et related problems, ont été améliorés et activés par défaut pour fournir des informations cliquables à l'intérieur du code :
L'interface utilisateur et la navigation des templates pour la structural search and replace (SSR) ont été repensées. SSR considère la structure du code lors de la recherche d'un modèle de code de construction grammaticale et peut être trouvé via Edit | Find | Search Structurally ou Replace Structurally :
IntelliJ IDEA Ultimate détecte désormais les dépendances Maven et Gradle vulnérables et suggère des améliorations. La fonctionnalité est disponible via le Package Checker Plugin qui utilise Checkmarx Software Composition Analysis.
La prise en charge de Markdown a été améliorée et, entre autres, prend désormais en charge l'exécution directe d'une commande dans le fichier Markdown avec l'icône flèche verte :
Les nouvelles fonctionnalités publiées dans Java 18, telles que la JEP 413, Code Snippets in Java API Documentation, et la JEP 420, Pattern Matching for switch (Second Preview), sont désormais pris en charge.
Le nouveau modèle Surround with try/catch renvoie désormais une exception encapsulée dans une RuntimeException
, le décompilateur Java est compatible avec Java 17 et les annotations JUnit 5 @EnabledIf
, @DisabledIf
, @NullSource
, @EmptySource
, @TempDir
sont désormais pris en charge.
La prise en charge de Kotlin inclut désormais Kotlin 1.6.20, des performances et un débogueur améliorés, et le plug-in Kover fournit désormais une couverture de code.
Le profileur d'IntelliJ IDEA Ultimate combine désormais l'Async Profiler et Java Flight Recorder.
Un aperçu complet de toutes les modifications apportées à IntelliJ IDEA 2022.1 est disponible dans la section What's New du site Web de JetBrains.