Nouveautés de la version 3.0

Ci-après figure la liste des modifications les plus intéressantes et les plus importantes apportées aux outils de développement Java pour la version 3.0 d'Eclipse depuis la version 2.1 :

Editeur Java

Réduction dans l'éditeur Java L'éditeur Java prend maintenant en charge la réduction des zones du code. Lorsque vous faites glisser la souris sur un élément Java réduit, vous apercevez le code masqué :

Capture d'écran illustrant les importations réduites, les types internes et les corps de méthode

Actuellement, les instructions d'importation, les commentaires, les types et les corps de méthode peuvent être réduits. Vous pouvez activer ou désactiver la réduction dans les nouveaux éditeurs à l'aide de l'onglet Réduction de la page des préférences Java > Editeur :

Capture d'écran illustrant les préférences de réduction
L'interface graphique de JDT fournit un point d'extension pour étendre l'ensemble des réductions disponibles.

Mise en évidence avancée L'éditeur Java peut maintenant mettre en évidence le code source en fonction de sa sémantique (par exemple : les zones statiques, les variables locales, les appels de méthode statique). Lorsque la mise en évidence avancée est activée via la page des préférences Java > Editeur > Syntaxe, les nouvelles options de la mise en évidence avancée sont affichées dans la liste.

Exemple de mise en évidence avancée.

Il existe également de nouvelles options pour mettre en évidence les opérateurs et les crochets et le style Italique est désormais pris en charge.

Vue rapide Hiérarchie de types Sélectionnez un type, une méthode ou une référence de package dans l'éditeur Java et appuyez sur Ctrl+T pour afficher une vue rapide de la hiérarchie des types. Dans le cas des méthodes, tous les sous-types et les supertypes qui fournissent cette méthode sont affichés.

Appuyez de nouveau sur CTRL+T pour passer de la hiérarchie des types normaux à celle des supertypes.

Vue structurée de la hiérarchie des types

La structure rapide montre les membres hérités La structure rapide (Source > Ouvrir la structure, Ctrl+O) de l'éditeur Java affiche maintenant les membres hérités une fois que vous avez répété la séquence de touches Ctrl+O :

Structure rapide

De même pour la structure rapide (Ctrl+F3).

Mode de saisie Insertion avancée dans l'éditeur Java L'éditeur Java dispose maintenant du mode d'insertion avancée qui peut être activé ou désactivé via Edition > Mode d'insertion avancée (Ctrl+Maj+Insert).

En mode d'insertion avancée, l'éditeur fournit des fonctions Java supplémentaires qui peuvent être configurées dans la page des préférences Java > Editeur > Saisie. Par exemple, les options de positionnement avancé du point-virgule et des accolades ouvrantes déplacent le caret à la fin de la ligne avant d'insérer respectivement le point-virgule ou l'accolade fermante.

Mise à jour des importation lors des opérations de collage Lorsque vous copiez ou collez du code Java, les informations permettant de déterminer les déclarations d'importation requises par le code copié sont également capturées. Les importations nécessaires sont maintenant ajoutées automatiquement lorsque le code est collé. Cette fonction peut être configurée à l'aide des paramètres de préférence Java > Editeur > Saisie > Mettre à jour des importations lors du collage.
Fonctions du curseur améliorées dans les noms Java Les actions word-at-a-time (un mot à la fois) de l'éditeur Java respectent désormais la notation "CamelCase" des identificateurs Java. Par exemple, si l'option Mot suivant est utilisée sur l'identificateur "getFoo", un arrêt supplémentaire est effectué entre "get" et "Foo". Le comportement du curseur pour les noms Java est contrôlé par une option de la page des préférences Java > Editeur > Navigation.
Nouveau module de formatage du code

Le module de formatage du code a été amélioré : la page des préférences Java > Style de code > Module de formatage du code permet de choisir des profils existants, d'en définir de nouveaux et de les partager.

Page des préférences Module de formatage du code

Le nouveau module de formatage est fortement configurable ; il dispose de plus de 140 options couvrant tous les domaines, de la position des accolades, au formatage des commentaires Javadoc en passant par la position des accolades.

Boîte de dialogue d'édition des profils du module de formatage du code

Formatage de plusieurs fichiers La commande de formatage est également activée dans les projets Java, les dossiers source et les packages. Lorsqu'ils sont appelés, tous les fichiers source contenus sont formatés en fonction des paramètres actuellement configurés pour le module de formatage.
Vérification orthographique Une fonction de vérification orthographique a été ajoutée à l'éditeur Java. Une fois que vous l'avez activée et que vous avez spécifié un dictionnaire dans la page des préférences Java > Editeur > Vérification de l'orthographe, les erreurs d'orthographe sont affichées dans l'éditeur Java et les correctifs rapides correspondants deviennent disponibles.

Exemple de proposition de correction orthographique

Vous pouvez également activer le dictionnaire pour l'assistant de contenu. Toutefois, aucun dictionnaire n'est actuellement inclus dans Eclipse. Le format requis consiste en une liste de mots séparés par des caractères de nouvelle ligne et les correctifs rapides permettent d'ajouter immédiatement de nouveaux termes au dictionnaire. Les contributions de dictionnaire sont acceptées.

Page des préférences Vérification de l'orthographe

Mise en commentaire de bloc Une sélection de texte dans l'éditeur Java peut être rapidement transformé en commentaire de bloc à l'aide de l'option Source > Ajouter un bloc de commentaire . Inversement, la commande Source > Supprimer la mise en commentaire d'un bloc permet de supprimer le commentaire de bloc dans lequel se trouve le curseur.
Commande Ajout/Suppression de la mise en commentaire Les anciennes commandes Source > Mettre en commentaire et Source > Supprimer les commentaires de l'éditeur Java ont été remplacées par la commande Source > Ajout/Suppression de la mise en commentaire (Ctrl+/) qui supprime la mise en commentaire des lignes source actuellement sélectionnées si elles sont toutes en commentaire et les met en commentaire dans le cas contraire. (Vous pouvez associer des raccourcis clavier aux anciennes commandes, qui restent disponibles, via la page des préférences Plan de travail > Touches.)
Assistant de contenu incrémentiel Cochez la case Insérer les préfixes courants automatiquement dans la page des préférences Java > Editeur > Assistant de code pour utiliser une exécution incrémentielle de style shell dans l'éditeur Java. Si les exécutions disponibles ne possèdent pas de préfixe commun, le menu en incrustation de proposition est affiché.
Marquage dynamique des occurrences dans le fichier Les occurrences de l'élément sélectionné peuvent être marquées dans l'éditeur Java à l'aide du nouveau bouton Marquer les occurrences de la barre d'outils (Illustration du bouton Marquer les occurrences de la barre d'outils) ou de la commande (Alt+Maj+O). Dans la page des préférences Java > Editeur > Marquer les occurrences, vous pouvez configurer les éléments à marquer.

Marquer les occurrences

Les occurrences de l'élément sélectionné sont marquées à l'aide des annotations d'occurrence, dont la présentation peut être configurée à l'aide de la page des préférences Annotation (Plan de travail > Editeurs > Annotations).

Lorsque l'élément sélectionné est modifié, les occurrences marquées sont automatiquement mise à jour. Par défaut, les occurrences marquées sont fixes (elles restent en évidence même si aucun élément Java valide ne se trouve à l'emplacement actuel du caret).

Les occurrences marquées peuvent être rapidement supprimées à l'aide de la commande source Supprimer les annotations des occurrences (Alt+Maj+U).
Mise en évidence des points de sortie d'une méthode

Lorsque vous placez le curseur sur le type de retour d'une méthode, tous les points de sortie de la méthode sont mis en évidence. La mise en évidence des points de sortie peut être activée via la page des préférences Java > Editeur > Marquer les occurrences.

Méthode avec points de sortie en évidence

Marquage des emplacements des exceptions générées Lorsqu'une exception est sélectionnée, les emplacements où cette exception est générée peut être marquée dans l'éditeur Java en déclenchant l'action Rechercher > Occurrences des exceptions. Les emplacements sont marqués automatiquement si le marquage des occurrences est activé via la page des préférences Java > Editeur > Marquer les occurrences.

Marquage des exceptions

L'éditeur Java montre les méthodes remplacées La nouvelle annotation Indicateur de remplacement (voir la page des préférences Plan de travail > Editeurs > Annotations) balise une méthode qui en implémente ou en remplace une autre. Par défaut, les icônes de remplacement et d'implémentation apparaissent dans la règle verticale de gauche ; cliquez sur l'icône pour accéder à la super méthode :

Illustration avec un indicateur de remplacement

Annotations multiple affichées dans les info-bulles Si plusieurs annotations sont affichées dans la règle de l'éditeur de texte, elles le sont côte-à-côte lorsque vous faites passer la souris dessus. Vous pouvez accéder séparément aux avertissements et actions, tels que les correctifs rapides, la définition de points d'arrêt et l'ajout de signets. Cette fonctionnalité est désactivée par défaut, mais vous pouvez l'activer dans la page des préférences Java > Editeur > Info-bulles.

Lorsque vous faites glisser la souris sur plusieurs annotations dans la règle verticale, une info-bulle les affiche côte-à-côte.

Nouveau repère d'assistant rapide A mesure que vous saisissez du texte dans un éditeur Java, un repère d'assistant rapide (ampoule électrique verte) apparaît dans la marge de gauche lorsqu'un assistant rapide est disponible. Utilisez Edition > Correctif rapide (Ctrl+1) ou cliquez sur l'icône en forme d'ampoule électrique pour afficher les propositions. Cette fonction peut être activée en cochant la case Activer l'ampoule pour les assistants rapides dans la page des préférences Java > Editeur > Aspect.

Ampoule électrique de l'assistant rapide

Mode lié pour les correctifs rapides Plusieurs résultats de correctif rapide apparaissent maintenant en mode lié (modèle). Utilisez les touches Tab et Maj+Tab après l'appel d'un correctif rapide pour naviguer entre un type de retour généré, un nom de méthode, des types d'argument et des noms d'argument. Exemples de correctif rapide utilisant le mode lié :
  • Création d'une méthode
  • Création d'une zone, d'un paramètre ou d'une variable locale
  • Ajout d'un argument
  • Affectation d'une instruction à une nouvelle variable locale ou à une zone
Le mode lié offre des recommandations supplémentaires : arguments, types ou noms différents.

Exemple de déduction des arguments :

Correctif rapide Ajout d'un argument et résultat en mode lié

Exemple de déduction des arguments :

Correctif rapide Ajout d'une déclaration throws et résultat en mode lié

Déduction des identificateurs améliorée Lors de l'ajout de zones, de variables ou de paramètres, les correctifs rapides essayent de déduire les noms appropriés pour les nouveaux identificateurs. La fonction de mode lié propose maintenant plusieurs recommandations.
Déduction des identificateurs par le correctif rapide Affectation à une variable locale
Correctifs rapides améliorés pour les non-concordances de paramètre Plusieurs correctifs rapides Java ont été ajoutés pour les paramètres non concordants, y compris les offres de transtyper, d'échanger, d'ajouter ou de supprimer des arguments ou des paramètres de méthode.

Correctifs rapides pour non-concordances de paramètre

Nouveaux assistants rapides De nouveaux assistants rapides ont été ajoutés à l'éditeur Java. Essayez Ctrl+1 sur :
  • les variables, pour fractionner et joindre leur déclaration de variable ;
  • une instruction "if", pour convertir son corps en un bloc ou ajouter un nouveau bloc "else" ;
  • un paramètre de méthode, pour l'affecter à une nouvelle zone ;
  • une déclaration de méthode, pour créer la méthode dans un supertype.
Assistant rapide Création dans un supertype

Assistant rapide Affectation d'un paramètre à une zone

Création de méthodes getter et setter de l'assistant de code Outre la création de méthode de remplacement, l'assistant de code permet également de créer des méthodes getter et setter, des constructeurs par défaut et des raccords de méthode. Placez le curseur dans le corps du type entre des membres et appuyez sur Ctrl+Espace pour obtenir les propositions qui créent un raccord de méthode.

Méthode Getter à l'aide de l'assistant de code

Méthodes rapides de création d'un constructeur La nouvelle commande Java Source > Générer un constructeur à l'aide des zones crée un constructeur qui initialise les zones sélectionnées. Vous choisissez les zones à initialiser à partir de paramètres de constructeur supplémentaires dont l'ordre est contrôlé via les boutons haut/bas de la boîte de dialogue.

constructeur avec zones

La commande Source > Ajouter des constructeurs de la superclasse affiche maintenant une boîte de dialogue pour que vous puissiez choisir les constructeurs de la superclasse à insérer dans la classe actuelle. La fonction de l'assistant rapide peut également être utilisée pour une insertion sans invite.

Débogueur Java

Menus en incrustation pour l'inspection/l'affichage

Les menus en incrustation d'évaluation sont maintenant affichés pour tous les résultats d'affichage et d'inspection.

Menu en incrustation rapide pour l'inspection

Structure logique

Le débogueur Java permet maintenant l'affichage sous une forme plus compacte et plus claire de certains types Java, y compris les collections et les mappes. Ces structures logiques sont contrôlées par l'intermédiaire d'un bouton d'activation/de désactivation dans la vue Variables.
Structures logiques

Filtre des unités d'exécution du système

Les unités d'exécution système sont maintenant filtrées à partir de la vue Débogage par défaut. La commande Afficher les unités système du menu déroulant de la vue active ou désactive le filtre.

Avancer d'un pas avec entrée dans la sélection sur n'importe quelle ligne

La commande Avancer d'un pas avec entrée dans la sélection du débogueur Java n'est plus restreinte à la ligne d'exécution en cours.

Points d'arrêt de préparation de classe

Des points d'arrêt peuvent être définis sur un événement de préparation de classe. Le programme sera suspendu lors du chargement initial par la machine VM Java de l'interface ou de la classe spécifiée.

Point d'arrêt de préparation de classe

Hyperliens de point d'arrêt d'exception

Les points d'arrêt d'exception peuvent être maintenant directement créés à partir d'une trace de pile dans la console. Si vous cliquez sur l'hyperlien qui apparaît sous le nom de l'exception au début d'une trace de pile, une boîte de dialogue de propriétés s'ouvre sur le point d'arrêt d'exception nouvellement créé (ou existant).

Lien Point d'arrêt d'exception dans la vue Console

Points d'arrêt dans une source externe

Vous pouvez maintenant placer un point d'arrêt dans un code source externe (un code source qui ne se trouve pas dans le chemin d'accès aux classes de compilation d'un projet). Les actions de création de point d'arrêt du menu Exécuter créent automatiquement des points d'arrêt externes chaque fois que le débogueur affiche une source externe.

Les propagations de modifications mettent à jour les points d'arrêt et les configurations de lancement

Les points d'arrêt et les configurations de lancement sont maintenant mis à jour suite aux propagations des modifications du code source Java, telles que le changement de nom d'un projet Java, d'un fichier source ou d'une déclaration de type.

l'opération de changement de nom inclut les configurations de lancement Java

Option de redémarrage lorsque le remplacement à chaud du code échoue

Lorsque des modifications non prises en charge par le remplacement de code à chaud sont apportées à la machine VM Java hôte, vous avec maintenant l'option de redémarrer la machine VM en plus de celle de choisir de continuer ou d'arrêter l'opération.

Boîte de dialogue d'échec du remplacement de code à chaud

Des arguments VM par défaut peuvent être associés à un JRE

La page de préférences Java > JRE installés permet d'associer un ensemble d'arguments VM par défaut à chaque JRE. Ces arguments seront transmis à la machine virtuelle chaque fois qu'ils sont utilisés.

Boîte de dialogue des préférences JRE pour les arguments VM par défaut

Propagation des modifications

Menus rapides pour l'action source et l'action de propagation des modifications

Vous pouvez accéder à la commande source et à la commande de propagation des modifications via un menu rapide. Sélectionnez l'élément à utiliser dans l'éditeur Java ou dans une vue Java et appuyez sur Alt+Maj+S pour le menu source rapide ou sur Alt+Maj+T pour le menu de propagation des modifications rapide.

Menu rapide de propagation des modifications

Les propagations de modifications mettent à jour les références dans JavaDoc Les propagations de modifications Renommer, Déplacer et Changer la signature de la méthode mettent désormais à jour également les références des commentaires Javadoc. Cela inclut les références dans les balises @see et @link, ainsi que dans les clauses @param et @throws.

La boîte de dialogue Changement de nom a été simplifiée en conséquence :

Boîte de dialogue Changement du nom du type

L'ancienne option Mettre à jour les références dans les commentaires Javadoc a été réduite dans Mettre à jour les références. Les anciennes options Mettre à jour les références dans les commentaires classiques et Mettre à jour les références dans les littéraux de chaînes ont été fusionnées dans Mettre à jour les occurrences de texte dans les commentaires et les chaînes.

Propagation des modifications Généraliser le type Sélectionnez la déclaration d'une variable, d'un paramètre, d'une zone ou d'un type de retour de méthode dans un éditeur Java et choisissez Propagation des modifications > Généraliser le type.

Généraliser le type - Assistant

L'assistant affiche la hiérarchie de supertypes de la variable. Si vous sélectionnez l'un des types de variable, la déclaration est mise à jour.

Généraliser le type - Après
Propagation des modifications Introduire une fabrique Sélectionnez un appel ou une déclaration de constructeur dans l'éditeur Java et choisissez Propagation des modifications > Introduire une fabrique.

Introduire une fabrique - Avant

Assistant Introduire une fabrique

Une méthode de fabrique statique est créée et appelle le constructeur now-private ; tous les appels destinés au constructeur spécifié sont remplacés par des appels à la nouvelle méthode de fabrique.

Introduire une fabrique - Après
Propagation des modifications Introduire un paramètre Sélectionnez une expression dans un éditeur Java et choisissez Propagation des modifications > Introduire un paramètre.

Introduire un paramètre - Avant

La méthode conteneur reçoit un nouveau paramètre et l'expression sélectionnée est copiée dans la liste des arguments de tous les sites d'appel.

Introduire un paramètre - Après

Propagation des modifications améliorée pour l'option Changer la signature de la méthode Dans l'éditeur Java, sélectionnez une méthode et choisissez Propagation des modifications > Changer la signature de la méthode.

Assistant Changer la signature

La propagation des modifications effectue maintenant les opérations suivantes :
  • elle renomme également les paramètres des méthodes de remplacement,
  • elle met à jour les références dans javadocs,
  • elle offre un assistant de contenu (Ctrl+Espace) dans la colonne du type de paramètre,
  • elle permet de renommer la méthode,
  • elle permet de modifier des exceptions.

En outre, l'édition dans la table des paramètres a été simplifiée pour que vous puissiez utiliser les touches de navigation standard (Tab, Maj+Tab, Flèche vers le haut et vers le bas). L'édition peut être lancée en cliquant dans une cellule ou en appuyant sur la touche F2 ou Entrée.

Méthode d'extraction des types internes

Dans le cas d'un code Java se trouvant dans un type de méthode anonyme, local ou non statique, la propagation des modifications de l'option Méthode d'extraction permet maintenant la création de la nouvelle méthode dans un type externe.

Assistant Méthode d'extraction

La méthode d'extraction détecte des fragments de code en double

La méthode d'extraction recherche maintenant les fragments de code en double et permet également de les extraire dans la nouvelle méthode. Par exemple, lors de l'extraction de l'expression foo(a) + bar(b) du fragment de code :

Assistant Méthode d'extraction

le code résultant est le suivant :

Assistant Méthode d'extraction

Outils Java - Général

Hiérarchie des appels de méthode Vous pouvez ouvrir une vue affichant une hiérarchie d'appels de méthode en choisissant Naviguer > Ouvrir la hiérarchie d'appels (Ctrl+Alt+H) dans l'éditeur Java ou dans toute vue Java qui affiche des méthodes.

Vue Hiérarchie d'appels

Vue Javadoc Il existe une nouvelle vue Javadoc (Fenêtre > Afficher la vue > Autre > Java > Javadoc) qui affiche la Javadoc de l'élément sélectionné dans l'éditeur Java ou dans une vue Java. La vue Javadoc utilise le widget de navigateur SWT pour afficher du code HTML sur les plateformes qui le prennent en charge.

Vue Javadoc

Vue Déclaration Il existe une nouvelle vue Déclaration (Fenêtre > Afficher la vue > Autre > Java > Déclaration) qui affiche la source de l'élément sélectionné dans l'éditeur Java ou dans une vue Java.

Vue Déclaration

Filtres de type

L'ensemble des types affichés dans les propositions de l'assistant de code et des correctifs rapides peut maintenant être filtré à l'aide de la nouvelle page des préférences Java > Filtres de type. Les types correspondant à l'un de ces masques de filtre de la liste n'apparaîtront pas dans la boîte de dialogue Ouverture d'un type et ne seront pas disponibles dans les propositions de l'assistant de code et des correctifs rapides. Ces filtres n'ont aucune incidence sur l'affichage des types dans les vues Packages et Hiérarchie des types.

Page des préférences Filtres de type
Prise en charge du filtrage améliorée Les menus de vue Java qui contiennent une entrée "Filtres" contiennent maintenant des entrées adjacentes sélectionnables pour les filtres récemment modifiés.

Filtres améliorés

Javadoc externe hors des archives Si une documentation Javadoc se trouve dans une archive, vous n'avez plus besoin de décompresser l'archive. La boîte de dialogue de l'emplacement de Javadoc prend désormais en charge la documentation dans les archives. Sélectionnez un fichier JAR et affichez sa page de propriétés (ou sélectionnez Projet > Propriétés > Chemin de compilation Java > Bibliothèques > Emplacement de la documentation Javadoc) pour associer la documentation à un fichier JAR.

Boîte de dialogue de configuration de l'emplacement de la documentation Javadoc

Utilisez Naviguer > Ouvrir le Javadoc externe (Maj+F2) pour ouvrir un Javadoc dans un navigateur.

Options de regroupement dans la vue Recherche Vous pouvez choisir pour la nouvelle vue Recherche un mode de présentation à plat ou hiérarchique dans le menu de la vue. Les résultats de la recherche Java en mode hiérarchique peuvent maintenant être regroupés par projet, package, fichier ou type.

nouvelle vue de recherche

Filtres de correspondance dans une recherche Java Les résultats de la recherche Java peuvent être filtrés. Vous pouvez filtrer les accès en lecture et en écriture, les instructions d'importation et les commentaires Javadoc. Seuls les filtres applicables à la recherche en cours sont affichés.

filtres de recherche

Recherche de types locaux et anonymes Les types locaux et anonymes sont maintenant intégralement pris en charge dans les opérations de recherche. En particulier, vous pouvez désormais rechercher des références à un type local sélectionné. En outre, les résultats de recherche sont maintenant inclus dans des types locaux ou anonymes (au lieu d'être systématiquement inclus dans la méthode conteneur la plus à l'extérieur).
Types locaux Les types locaux et anonymes sont maintenant affichés dans les diverses vues Java par défaut, avec des filtres sur les vues pour les masquer.

Types locaux dans la hiérarchie de types

Eléments déconseillés Les types, zones et méthodes marqués comme déconseillés sont maintenant signalés par une barre oblique.

Eléments déconseillés dans la structure

Références dans les commentaires Javadoc L'infrastructure Java inclut désormais des références dans les commentaires Javadoc. Vous pouvez les voir dans plusieurs endroits et notamment dans les pages Recherche et Organisation des importations, dans les changements de nom liés dans l'éditeur et dans les marqueurs d'occurrence de l'éditeur.

Occurrences marquées dans les balises Javadoc

Assistant de contenu dans les zones de boîte de dialogue L'assistant de contenu (Ctrl+Espace) est maintenant également disponible dans les zones d'entrée des diverses boîtes de dialogue Java. Recherchez les petites icônes en forme d'ampoule électrique en regard de la zone lorsque cette dernière est mise en évidence.

Boîte de dialogue Nouvelle classe

Prise en charge des jeux de documents dans la vue Hiérarchie des types

La vue Hiérarchie des types prend maintenant en charge le filtrage par un jeu de documents. Une fois qu'un jeu de documents est sélectionné dans le menu de la vue, la vue Hiérarchie n'affiche que les types Java contenus dans le jeu de documents spécifié, étendus en fonction des types de parent requis pour compléter l'arborescence (ces derniers sont indiqués par des images blanches).

Vue Hiérarchie des types avec jeu de documents activé
Interfaces dans la hiérarchie des types de package La hiérarchie des types ouverte sur des packages (F4) affiche maintenant également les interfaces de ce package. Il en est de même pour les hiérarchies sur les dossiers source, les projets et les fichiers JAR.

Hiérarchie des types de package avec interfaces

Assistants NLS améliorés L'assistant NLS (Source > Externalisation des chaînes) a été mis à jour pour fonctionner sur les fichiers déjà externalisés :
  • changement des noms de clé et valeur préexistante ;
  • changement simultané des noms de plusieurs préfixes de clé ;
  • remplacement de l'état des chaînes déjà externalisées par l'état "ignoré" ou par l'état d'origine non balisé (internalisé) ou vice versa ;
  • insertion améliorée de nouvelles clés dans les fichiers de propriétés.

Assistant NLS sur les chaînes déjà externalisées

Bibliothèques définies par l'utilisateur Vous pouvez maintenant regrouper les fichiers JAR externes dans une bibliothèque nommée. Créez des bibliothèques définies par l'utilisateur dans la page des préférences Java > Chemin de compilation > Bibliothèque utilisateur, puis ajoutez-les au chemin de compilation dans les propriétés du projet.

Page des préférences de la bibliothèque utilisateur

De même que pour les entrées des variables de chemin d'accès aux classes, l'entrée de chemin d'accès aux classes d'une bibliothèque utilisateur fait référence aux bibliothèques utilisateur par nom (et non aux fichiers JAR du système de fichiers local).

Bibliothèque dans la vue Package

Compilateur Java

Le compilateur Java Eclipse est compatible JCK1.4a Le compilateur Java Eclipse en mode 1.4 est compatible avec JCK1.4a ; en mode 1.3, il est compatible avec JCK1.3a.
Modèle d'inclusion pour le dossier source Tout dossier source du chemin de compilation Java peut être maintenant associé à des modèles d'inclusion pour que vous puissiez inclure de manière sélective certains fichiers source Java. Ces modèles viennent en complément des modèles d'exclusion déjà disponibles pour exclure de manière sélective certains fichiers source. Notez que ces deux modèles peuvent en fait être associés conformément à la règle suivante : si vous spécifiez ces deux modèles, le modèle d'exclusion est toujours prioritaire au modèle d'inclusion. Par exemple, {include="src/", exclude="src/sub"} représente l'arborescence "src/", sans la sous-arborescence "src/sub/". Les modèles d'inclusion et d'exclusion peuvent être spécifiés via la propriété du chemin de compilation du projet.

Boîte de dialogue Exclusion

Recherche d'accès indirects aux membres statiques du code Java Le compilateur Java peut maintenant rechercher et baliser les accès indirects aux membres statiques. L'option permettant d'activer cette vérification se trouve dans la page des préférences Java > Compilateur >Style (par défaut, elles ne sont pas signalées).

Nouveau diagnostic pour les accès indirects aux membres statiques

Les accès indirects aux membres statiques posent un problème de compatibilité pour le fichier de classe généré. Pour les fichiers de classe compatibles aux versions JDK antérieures à la version 1.2, le compilateur remplace les références statiques indirectes par la classe déclarante (Y dans l'exemple) ; pour les fichiers de classe compatibles aux versions JDK égales ou postérieures à la version 1.2, le compilateur remplace les références statiques par le type de destinataire (X dans l'exemple).

Recherche des affectations booléennes accidentelles Le compilateur Java peut maintenant rechercher les affectations booléennes accidentelles. L'option permettant d'activer cette vérification se trouve dans la page des préférences Java > Compilateur >Style (par défaut, elles ne sont pas signalées) :

Nouvelles préférences de style du compilateur

Option du compilateur Java pour le balisage des accès aux zones d'instance non qualifiées Le compilateur Java peut maintenant rechercher et baliser les références non qualifiées à une zone d'instance. Cette vérification peut être activée à partir de la page des préférences Java > Compilateur > Style (désactivée par défaut).

Cette option prend en charge un style de codage dans lequel toutes les références à des zones d'instance sont qualifiées pour les distinguer visuellement des références aux variables locales.

Option du compilateur Java pour le balisage d'un bloc finally qui ne peut pas être exécuté normalement Le compilateur Java peut maintenant rechercher et baliser les blocs finally qui ne peuvent pas être exécutés normalement (conformément à la spécification du langage Java). Les blocs finally qui ne peuvent pas être exécutés normalement peuvent entraîner un risque de confusion et ne sont pas recommandés. Cette vérification peut être activée à partir de la page des préférences Java > Compilateur > Style (avertissement par défaut).

Nouveau diagnostic pour les blocs finally qui ne peuvent pas être exécutés normalement

Instruction de flux de contrôle vide Le compilateur Java peut maintenant baliser une instruction vide utilisée comme corps d'instruction de flux de contrôle. Reportez-vous aux préférences sous Java > Compilateur > Style > Instructions vides
Option du compilateur Java pour le balisage des blocs vides non documentés Le compilateur Java peut maintenant rechercher et baliser les blocs vides qui ne sont pas documentés par un commentaire. Les corps de type et de méthode entièrement vides sont également suspects. Cette vérification peut être activée à partir de la page des préférences Java > Compilateur > Style (désactivée par défaut).
Recherche de variables qui masquent une autre zone ou variable Le compilateur Java peut maintenant rechercher les zones et déclarations de variable locales qui masquent une autre zone ou une autre variable. L'option permettant d'activer cette vérification se trouve dans la page des préférences Java > Compilateur >Avancées (par défaut, elles ne sont pas signalées) :

Nouvelles préférences de style du compilateur

Recherche de vérifications de type inutiles dans le code Java Le compilateur Java peut maintenant rechercher et baliser les transtypages inutiles ou les opérations "instanceof". L'option permettant d'activer ces vérifications se trouve dans la page des préférences Java > Compilateur >Code inutilisé (par défaut, elles ne sont pas signalées).

Nouveau diagnostic pour les vérifications inutiles de type

Option du compilateur Java pour le balisage des exceptions inutilement vérifiées Le compilateur Java peut maintenant rechercher et baliser les exceptions inutilement vérifiées qui sont déclarées, mais pas générées. Cette vérification peut être activée à partir de la page des préférences Java > Compilateur > Code inutilisé (désactivée par défaut).

Notez qu'une méthode donnée peut toujours choisir de générer un nombre moins important d'exceptions vérifiées que celui déclaré dans la superclasse (ou l'interface).

Nouveau diagnostic pour les exceptions déclarées générées, mais non utilisées

Correctifs rapides pour les nouvelles options du compilateur Les nouvelles options du compilateur sont fournies avec les correctifs rapides correspondants :

Déclaration inutile d'une exception générée :
Correctif rapide Suppression d'une exception générée
Accès non qualifié à une zone d'instance :
Correctif rapide Qualifier la zone
Transtypage non nécessaire :
Correctif rapide Transtypage non nécessaire

Appuyez sur Ctrl+1 sur un avertissement ou une erreur ou cliquez sur l'icône en forme d'ampoule électrique pour obtenir les correctifs rapides recommandés.
Traitement des commentaires Javadoc Le compilateur Java d'Eclipse traite maintenant les commentaires Javadoc. La recherche signale les références dans les commentaires de la documentation et la propagation des modifications met également à jour ces références. Cette fonction est contrôlée à partir de la page des préférences Java > Compilateur > Javadoc (ou définie pour un projet à l'aide de l'option Projet > Propriétés > Compilateur Java > Javadoc).

Page des préférences Javadoc

Lorsqu'elle est activée, les commentaires Javadoc dont la syntaxe est incorrecte sont marqués dans l'éditeur Java :
Erreurs détectées dans Javadoc
Correctifs rapides pour les erreurs dans les commentaires Javadoc Une fois que vous avez activé les nouveaux marqueurs d'erreur dans les commentaires Javadoc (article précédent), vous pouvez utiliser le correctif rapide de l'éditeur Java pour corriger les balises Javadoc manquantes. Cliquez simplement sur l'icône en forme d'ampoule électrique ou utilisez Edition > Correctif rapide (Ctrl+1).

Correctif rapide Insertion de Javadoc

Insertion d'un code à octets JSR Désormais, le compilateur Java peut éventuellement éviter de générer des fichiers de classe à l'aide de l'instruction de code à octets JSR (généralement utilisée lors de la compilation des blocs try-finally), en intégrant les instructions de la sous-routine correspondante. Les fichiers de classe sont un peu plus grands, mais ils sont généralement chargés plus rapidement. Ce mode anticipe la prise en charge de JSR 202. Reportez-vous aux préférences sous Java > Compilateur > Conformité et fichiers classe.

Intégration JUnit

Exécution d'un test JUnit nécessitant une configuration spéciale JUnit prend maintenant en charge la décoration de chaque test d'exécution. Pour cela, il implémente une méthode statique setUpTest(Test) publique dans votre classe TestCase, comme illustré ci-dessous :
Exécution d'un test JUnit

La méthode setUpTest est automatiquement utilisée lorsqu'un test est sur le point d'être exécuté (y compris pour la réexécution d'un test ayant échoué). Le résultat renvoyé par la méthode setUpTest est exécuté à la place du test spécifié ; en règle général, ce test est intégré dans une méthode set-up ou tear-down spéciale.

Comparaison des chaînes améliorée dans la vue JUnit Si un test JUnit échoue en raison d'une chaîne inattendue, vous pouvez cliquer sur le bouton de la barre d'outils en forme de loupe pour afficher les différences entre les chaînes, dans un outil de comparaison :

Afficheur Junit avec un test ayant échoué

Afficheur de comparaison des chaînes

Mentions légales