JetBrains a publié IntelliJ IDEA 2021.1 EAP 1 avec une prise en charge complète de Java 16. Parmi les autres fonctionnalités notables, citons la prise en charge du sous-système Windows pour Linux (WSL) 2, un navigateur intégré pour prévisualiser les fichiers HTML et une prise en charge améliorée du profiling. Cette version permet également d'exécuter des applications via Docker, SSL et WSL.
IntelliJ IDEA 2021.1 EAP 1 est la première version de l'Early Access Program (EAP) pour la prochaine version 2021.1. La version GA est prévue pour mars 2021. Les EAP sont utilisés par la communauté Java pour tester les nouvelles fonctionnalités d'IntelliJ IDEA et fournir des commentaires, afin que ces fonctionnalités puissent être encore améliorées avant une version officielle de GA.
Cet EAP prend en charge Java 16, également prévu pour une version en mars 2021. L'une des nouvelles fonctionnalités de Java 16 est la possibilité d'inclure des inner classes statiques dans des classes. Cette fonctionnalité est prise en charge dans cette version EAP :
public class OuterClass {
class InnerClass {
static final String STATIC_MESSAGE = new String("Works in Java 16");
static String staticMethod() {
return STATIC_MESSAGE;
}
}
}
Le niveau de langue peut être défini sur 16 - Records, patterns, local enums and interfaces ou sur 16(Preview) - Sealed types sous Fichier | Structure du projet | Modules .
Avant Java 16, la manière courante de récupérer une liste à partir d'un flux était d'écrire stream.collect(Collectors.toList())
. Java 16 propose un moyen plus concis de récupérer la liste à partir d'un flux en écrivant stream.toList()
.
IntelliJ IDEA prend en charge la nouvelle méthode Java 16 toList()
et l'affiche d'abord à la fin du code pour une instance de l'interface Stream
.
Il est possible de remplacer l'ancienne méthode de récupération d'une liste à partir d'un flux par la nouvelle méthode. Cependant, veuillez noter qu'un appel à stream.toList()
renvoie une liste immuable, où un appel à stream.collect(Collectors.toList())
peut éventuellement renvoyer une liste modifiable. Si le code existant attend une liste modifiable, l'utilisation de stream.toList()
ne peut pas être utilisée en remplacement.
Cette version fournit une prise en charge initiale de WSL 2. IntelliJ IDEA peut désormais détecter les JDK installés dans WSL 2 et, si nécessaire, télécharger et installer un JDK. Une fois installé, le code peut être compilé et exécuté par le système de construction d'IntelliJ IDEA. Les futures versions d'EAP incluront la prise en charge de Maven et Gradle dans WSL 2.
Cette version contient un nouveau navigateur intégré pour prévisualiser les fichiers HTML. Le navigateur de prévisualisation est accessible en cliquant sur le logo IntelliJ IDEA dans le widget en haut à droite de l'éditeur. Après l'activation du mode d'aperçu, les modifications apportées à tout code HTML, CSS et JavaScript sont immédiatement affichées dans le navigateur intégré.
Exécuter des cibles (Run targets) est une autre nouvelle fonctionnalité qui permet d'exécuter, de tester et de déboguer une application sur une cible. Les cibles prises en charge pour exécuter une application incluent Docker, SSH et WSL. Avec Run Targets, il est possible d'exécuter des applications Java, des tests JUnit et Maven sur l'une des cibles prises en charge.
Le profiler affiche les applications en cours d'exécution, y compris leur PID et leur utilisation du processeur. En cliquant sur le nom d'une application, il est possible d'attacher l'un des profilers : CPU Profiler, Allocation Profiler ou Java Flight Recorder. Avec un clic droit, il est possible d'exécuter deux nouvelles actions. Capture Memory Snapshot crée des instantanés *.hprof
de l'application en cours d'exécution pour localiser les problèmes de performances. Les CPU and Memory Live Charts permettent de visualiser en direct la consommation de processeur et de mémoire de l'application.
Cette version ramène la possibilité de modifier les paramètres lors de l'importation d'un projet Maven. La fonction est activée via File | New Projects Settings | Preferences for new Projects | Build, Execution, Deployment | Build Tools | Maven puis en sélectionnant "Show settings dialog for new Maven projects".
Le filtrage des dépendances externes dans la zone de recherche est désormais possible, par exemple, lors de la recherche d'une chaîne dans le projet. Pour l'activer, accédez à Edit | Find | Find in Files | Scope puis cliquez sur "... ". Une boîte de dialogue Scopes s'affiche pour inclure ou exclure les dépendances externes.
JetBrains Space, une solution d'équipe intégrée, propose entre autres des référentiels Git. Le plugin Space est maintenant inclus prêt à l'emploi et permet une intégration plus facile entre IntelliJ IDEA et JetBrains Space. Avec le plugin, il est possible de se connecter, de travailler avec des référentiels Git et de réviser le code sans quitter l'EDI. Il est également possible d'utiliser un profil d'inspection de code avant de valider un nouveau code dans le référentiel.