Conseils et astuces

Edition de la source

Assistant de contenu Cet assistant fournit une liste d'exécutions suggérées pour des chaînes saisies partiellement. Dans l'éditeur Java, appuyez sur les touches Ctrl+Espace ou sélectionnez Editer > Assistant de contenu.

Boîte de dialogue de sélection de l'assistant de contenu

Assistant de contenu dans des commentaires Javadoc L'assistant de contenu est également disponible dans des commentaires Javadoc.

Assistant de contenu pour des commentaires Javadoc

Assistant de contenu pour l'exécution de variables, paramètres de méthode et noms de zone

Vous pouvez utiliser l'assistant de contenu pour accélérer la création de zones, de paramètres de méthode et de variables locales. Le curseur étant placé après le nom de type de la déclaration, sélectionnez Editer > Assistant de contenu ou appuyez sur les touches Ctrl+Espace.

Suggestions pour les noms de zone

Si vous utilisez un préfixe ou un suffixe de nom pour les zones, les variables locales ou les paramètres de méthode, veillez à le spécifier dans la page des préférences Génération de code (Fenêtre > Préférences > Java > Génération de code > Noms).

Conseils sur les paramètres Avec le curseur placé sur un argument de méthode, vous pouvez voir une liste de conseils sur les paramètres. Dans l'éditeur Java, appuyez sur les touches Ctrl+Maj+Espace ou sélectionnez Editer > Conseils sur les paramètres.

Aide contextuelle des conseils sur les paramètres

Assistant de contenu sur des classes anonymes L'assistant de contenu fournit également de l'aide lors de la création d'une classe anonyme. Avec le curseur placé après la parenthèse ouvrante d'une création d'instance de classe, sélectionnez Editer > Assistant de contenu ou appuyez sur les touches Ctrl+Espace.

Assistant de contenu pour une classe anonyme

Cette opération crée le corps de la classe interne anonyme, incluant toutes les méthodes devant être implémentées.
Activer/désactiver l'insertion ou le remplacement de l'assistant de code Lorsque l'assistant de code est appelé sur un identificateur existant, il peut remplacer l'identificateur par l'exécution choisie ou seulement procéder à une insertion. Le comportement par défaut (remplacement ou insertion) est défini dans Fenêtre > Préférences > Java > Editeur > Assistant de contenu.
Vous pouvez temporairement inverser le comportement en étant à l'intérieur de la boîte de dialogue de sélection de l'assistant de contenu, en appuyant sur la touche Ctrl pendant la sélection de l'exécution.
Création de méthodes Getter et Setter Pour créer des méthodes getter et setter pour une zone, sélectionnez la déclaration de la zone et sélectionnez Source > Générer les méthodes Getter et Setter.

Boîte de dialogue Génération des méthodes Getter et Setter

Si vous utilisez un préfixe ou un suffixe de nom, veillez à le spécifier dans la page des préférences Génération de code (Fenêtre > Préférences > Java > Génération de code > Noms).
Suppression de méthodes Getter et Setter avec une zone Lorsque vous supprimez une zone, Eclipse propose de supprimer les méthodes Getter et Setter qui lui sont associées. Si vous utilisez un préfixe ou un suffixe de nom pour les zones, veillez à le spécifier dans la page des préférences Génération de code (Fenêtre > Préférences > Java > Génération de code > Noms).
Création de méthodes déléguées Pour créer une méthode déléguée pour une zone, sélectionnez la déclaration de la zone, puis Source > Générer des méthodes déléguées. Les méthodes sélectionnées sont alors ajoutées au type contenant un appel d'envoi aux méthodes déléguées. L'exemple suivant illustre une méthode déléguée :
public void addModifyListener(ModifyListener listener) {
    fTextControl.addModifyListener(listener);
}
Utilisation de la fonction glisser-déplacer pour créer une méthode Pour créer une méthode ayant la même signature qu'une méthode existante, vous pouvez utiliser la fonction glisser-déplacer ou copier/coller. Dans Windows, pour effectuer un glisser-déplacer, maintenez les touches Ctrl+Maj enfoncées pendant que vous déposez pour créer un lien.
Utilisation de la fonction glisser-déplacer pour la propagation des modifications Vous pouvez déplacer des unités de compilation Java entre des packages à l'aide de la fonction glisser-déplacer. Toutes les importations manquantes sont ajoutées et les références mises à jour.
Utilisation de la fonction glisser-déplacer pour déplacer et copier des éléments de code Java Vous pouvez déplacer et copier des éléments Java, tels que des méthodes et des zones à l'aide de la fonction glisser-déplacer. Cette opération ne déclenche pas la propagation des modifications, seul le code est copié ou déplacé.
Vous pouvez aisément placer le code d'éléments Java dans le presse-papiers du système Lorsque vous sélectionnez un ensemble de méthodes, de zones et de types et que vous appuyez sur Ctrl + C (ou sélectionnez l'action Editer > Copier), le code source des éléments sélectionnés est placé dans le presse-papiers du système. Vous pouvez alors le coller (Ctrl + V ou Editer > Coller) dans un autre emplacement du plan de travail ou même dans d'autres applications (votre programme de messagerie électronique, par exemple).
Utilisation de modèles pour créer une méthode Vous pouvez définir un nouveau modèle (Préférences > Java > Editeur > Modèles) contenant un raccord de méthode. Les modèles sont présentés dans les propositions de l'Assistant de contenu (Ctrl+Espace).
Vous disposez également de modèles existants, tels que 'private_method', 'public_method', 'protected_method'.
Utilisez la touche de Tabulation pour naviguer parmi les valeurs à saisir (type de retour, nom et arguments).

Assistant de contenu avec des propositions de nouveau modèle de méthode

Utilisation du correctif rapide pour créer une méthode Commencez par appeler la méthode et sélectionnez Correctif rapide (Ctrl+1) pour créer la méthode.

Correctif rapide 'Création d'une méthode'

Utilisation de l'assistant de contenu pour remplacer une méthode Appelez l'assistant de contenu (Ctrl+Espace) dans le corps du type à l'emplacement où la méthode doit être ajoutée. L'assistant de contenu propose toutes les méthodes qui peuvent être remplacées. Un corps de méthode est créé pour la méthode choisie.

Assistant de contenu 'Remplacement d'une méthode'

Utilisation du correctif rapide pour ajouter des méthodes non implémentées Pour implémenter une nouvelle interface, ajouter d'abord au type la déclaration 'implements'. Sans qu'il soit besoin de sauvegarder ou de compiler, l'éditeur Java souligne le type pour signaler que des méthodes sont manquantes et affiche l'icône en forme d'ampoule électrique du correctif rapide. Cliquez sur l'ampoule ou appuyez sur Ctrl+1 (Editer > Correctif rapide) pour choisir entre ajouter des méthodes non implémentées ou rendre votre classe abstraite.

Correctif rapide offrant la proposition 'Ajouter des méthodes non implémentées'

Ajout de méthodes remplaçantes Pour créer une méthode qui en remplace une autre à partir d'une classe de base, procédez comme suit :
Sélectionnez le type auquel ajouter les méthodes, puis Source > Remplacer/Implémenter les méthodes. Une boîte de dialogue s'ouvre permettant de choisir les méthodes à remplacer.

Boîte de dialogue 'Remplacement/Implémentation des méthodes'

Changement de nom local Pour effectuer rapidement un changement de nom ne nécessitant pas une analyse complète des dépendances dans d'autres fichiers, utilisez le correctif rapide de changement de nom local. Dans l'éditeur Java, placez le curseur dans l'identificateur d'une variable, d'une méthode ou d'un type et appuyez sur Ctrl+1 (Editer > Correctif rapide).
L'éditeur passe en mode d'édition lié (comme les modèles) et le changement d'identificateur modifie simultanément toutes les autres références à la variable, à la méthode ou au type.

Modification de plusieurs identificateurs à l'aide du correctif rapide 'Changement de nom local'

Utilisation du correctif rapide pour traiter les exceptions Le traitement des exceptions lancées est rendu plus simple. Les exceptions non traitées sont détectées lors de la saisie et soulignées d'une ligne rouge dans l'éditeur.
  • Cliquez sur l'ampoule ou appuyez sur Ctrl+1 pour entourer l'appel d'un bloc try catch. Si vous souhaitez inclure davantage d'instructions dans le bloc try, sélectionnez les instructions, puis Source > Entourer d'un bloc try/catch. Vous pouvez également sélectionner aisément des instructions individuelles à l'aide de Editer > Développer la sélection vers et en sélectionnant Délimiteur, Suivant ou Précédent.
  • Si l'appel est déjà entouré d'un bloc try, le correctif rapide suggère d'ajouter le bloc catch au bloc existant.
  • Si vous ne souhaitez pas traiter l'exception, laissez le correctif rapide ajouter une nouvelle exception lancée à la déclaration de méthode conteneur.

Propositions du correctif rapide 'Exception non interceptée'

Vous pouvez à tout moment convertir un bloc catch en exception lancée. Utilisez Ctrl+1 (Editer > Correctif rapide) sur un bloc catch.

Correctif rapide 'Remplacer la clause catch par une clause throws'

Moins de saisie pour les affectations Au lieu de saisir une affectation, commencez par l'expression qui sera assignée.

Correctif rapide 'Affecter une instruction à la nouvelle variable locale'

Appuyez sur Ctrl+1 (Editer > Correctif rapide) et sélectionnez 'Affecter une instruction à la nouvelle variable locale' ; l'assistant vous proposera un nom de variable.
Iterator iterator= vector.iterator();
Délimitation de lignes Pour entourer les instructions avec une instruction if / while / for ou un bloc, sélectionnez les lignes à entourer et appuyez sur Ctrl+1 (Editer > Correctif rapide). Tous les modèles contenant la variable ${line_selection} sont énoncés.

Correctif rapide 'Entourer de modèles'

Des modèles peuvent être configurés sous Fenêtre > Préférences > Java > Editeur > Modèles. Editer les modèles correspondants ou définissez vos propres modèles pour personnaliser le code résultant.
Création de vos propres modèles

Vous pouvez créer vos propres modèles. Passez à la page des préférences Java > Editeur > Modèles et cliquez sur le bouton Nouveau pour créer un modèle. Par exemple, un modèle permettant d'itérer en arrière dans un tableau ressemblerait à ce qui suit :

for (int ${index} = ${array}.length - 1; ${index} >= 0; ${index}--){
   ${cursor}
}
L'assistant de code peut insérer des noms d'argument automatiquement

L'assistant de code peut insérer des noms d'argument automatiquement à l'exécution de la méthode. Ce comportement peut être personnalisé dans la page des préférences Java > Editeur > Assistant de code (voir la case à cocher Compléter les noms d'arguments une fois la méthode terminée.) Par exemple, lorsque vous sélectionnez la seconde entrée :

Fenêtre Assistant de code

l'assistant de code insère automatiquement des noms d'argument :

Noms d'argument insérés par l'assistant de code

Vous pouvez alors utiliser la touche de tabulation pour naviguer parmi les noms insérés.

L'assistant de code peut également deviner les noms d'arguments remplis, en fonction de leurs types déclarés. Ceci peut être configuré par la case Noms d'argument remplis par proposition dans la page des préférences Java > Editeur > Assistant de code.

Suppression d'une instruction de délimitation Pour supprimer une instruction ou un bloc délimiteur, placez le curseur sur la parenthèse ouvrante et appuyez sur les touches Ctrl+1 (Editer > Correctif rapide).

Correctif rapide 'Suppression d'une instruction de délimitation'

Sélections structurées Vous pouvez sélectionner rapidement du code Java en tenant compte de la syntaxe, à l'aide de la fonction de sélection structurée.
Mettez le texte en évidence et appuyez sur les touches Ctrl+Maj+Flèche haut ou sélectionnez Editer > Développer la sélection vers > Elément délimiteur dans la barre de menus. La sélection est développée jusqu'au plus petit élément de syntaxe Java contenant la sélection. Vous pouvez encore développer la sélection en appelant à nouveau l'action.
Recherche du crochet correspondant Pour trouver un crochet correspondant, sélectionnez un crochet ouvrant ou fermant et appuyez sur les touches Ctrl+Maj+P (Naviguer > Accéder à > Crochet correspondant). Vous pouvez également cliquer deux fois avant un crochet ouvrant ou après un crochet fermant, ainsi le texte figurant entre les deux crochets est sélectionné.

Utilisation du 'double clic' pour sélectionner le texte entre deux crochets

Smart Javadoc Tapez '/**' et appuyez sur Entrée. Un raccord de commentaire Javadoc contenant les balises standard @param, @return et @exception est automatiquement ajouté.

Résultat de 'Smart Javadoc'

Les modèles du commentaire ajouté peuvent être configurés dans Fenêtre > Préférences > Java > Génération de code > Code et commentaires > Commentaires
Augmentation de la vitesse dans l'éditeur Java Vous pouvez désactiver le processus d'édition en :
  • Désactivant les indicateurs de problèmes qui s'affichent pendant la saisie. Désélectionnez toutes les cases dans Fenêtre > Préférences > Java > Editeur > Annotations.
  • Masquant la règle. Désélectionnez la case Fenêtre > Préférences > Java > Editeur > Aspect > Afficher la règle.
  • Désactivant la synchronisation de structure dans l'éditeur. Désélectionnez la case Fenêtre > Préférences > Java > Editeur > Aspect > Synchroniser la sélection de la structure lors du déplacement du curseur.
Utilisation de l'historique local pour revenir à une édition antérieure de méthode Chaque fois que vous éditez un fichier, son précédent contenu est conservé dans l'historique local. Les outils Java rendent l'historique local disponible pour les éléments Java, ainsi vous pouvez revenir à une précédente édition de la méthode, et pas nécessairement du fichier complet.

Sélectionnez un élément et utilisez Remplacer par > Historique local pour revenir à la précédente édition de l'élément.

Boîte de dialogue Remplacement à partir de l'historique local

Utilisation de l'historique local pour restaurer des méthodes supprimées Chaque fois que vous éditez un fichier, son précédent contenu est conservé dans l'historique local. Les outils Java rendent l'historique local disponible pour les éléments Java, ainsi vous pouvez restaurer les méthodes de manière sélective.

Sélectionnez un conteneur et utilisez Restaurer à partir de l'historique local pour restaurer des membres supprimés.

Boîte de dialogue Restauration à partir de l'historique local

Génération de code personnalisable La page des préférences Java > Génération de code permet de personnaliser le code et les commentaires générés de manière similaire à des modèles normaux. Ces modèles de code sont utilisés chaque fois que du code est généré. (Les nouveaux modèles remplacent les modèles 'filecomment' et 'typecomment' utilisés précédemment pour la génération de code.)

Page des préférences des modèles de code

La case Ajouter automatiquement des commentaires... vous permet de choisir si les fonctions qui créent des méthodes ou des types ajoutent automatiquement des commentaires ou s'ils ne sont ajoutés que de manière explicite par la fonction Ajouter un commentaire Javadoc.
Tri des membres Vous pouvez trier les membres d'une unité de compilation Java en fonction de l'ordre des catégories défini dans la page des préférences Java > Aspect > Ordre de tri des membres.
L'action figure sous Source > Trier les membres
Renvoi des chaînes à la ligne

Les littéraux chaînes peuvent passer à la ligne lorsque vous les éditez. Par exemple, si le code est comme suit :

String message= "This is some long message.";

placez le caret après le mot "some" et appuyez sur Entrée. Le code est automatiquement changé en :

String message= "This is some" + 
           " long message.";

Ce comportement peut être personnalisé dans la page des préférences Java > Editeur > Saisie.

Recherche

Localisation des variables et de leur accès en lecture/écriture Vous pouvez localiser les variables et facilement voir leur état en lecture/écriture en sélectionnant un identificateur (variable, référence ou déclaration de méthode ou de type) et en sélectionnant Recherche > Occurrences dans le fichier. Cette opération marque toutes les références de l'identificateur dans le même fichier. Les résultats s'affichent également dans la vue Recherche, avec des icônes affichant l'accès à la variable en lecture ou en écriture.
La recherche peut s'effectuer sur plusieurs fichiers en utilisant les fonctions de recherche générale (Recherche > Références).

Accès en lecture et écriture à une zone

Recherche de méthodes avec un type de retour spécifique

Pour rechercher des méthodes avec un type de retour spécifique, utilisez "* <type de retour>" comme suit :

  1. Ouvrez la boîte de dialogue de recherche et cliquez sur l'onglet Recherche Java.
  2. Tapez '*' et le type de retour, séparés par un espace, dans la chaîne à rechercher.
  3. Cochez la case Respect maj/min.
  4. Sélectionnez Méthode et Déclarations, puis cliquez sur Rechercher.

Recherche d'une méthode avec un type de retour donné

Recherche de code inutilisé Le compilateur Java détecte un code inatteignable, des variables inutilisées, des paramètres, des importations et des types, des méthodes et des zones privés inutilisés.
Le paramètre figure dans la page des préférences Java > Compilateur.

Page des préférences du compilateur

Ces paramètres sont également détectés lorsque vous tapez et qu'un correctif rapide propose de supprimer le code inutile.

Navigation et lecture du code

Ouverture sur une sélection dans l'éditeur Java Un élément peut être ouvert de deux façons à partir de sa référence dans l'éditeur Java.
  • Sélectionnez la référence dans le code et appuyez sur F3 (Naviguer > Ouvrir la déclaration)
  • Maintenez la touche Ctrl enfoncée et placez le pointeur de la souris sur la référence.
Navigation de style hyperlien La navigation de style hyperlien peut être configurée dans Préférences > Java > Editeur > Navigation.
Structures en place Appuyez sur les touches Ctrl+F3 dans l'éditeur Java pour afficher une structure en place de l'élément à la position courante du curseur ou appuyez sur les touches Ctrl+O (Naviguer > Afficher la structure) pour afficher une structure en place du fichier source courant.

Structure en place

Passage à la méthode suivante ou précédente Pour naviguer rapidement jusqu'à la méthode ou à la zone suivante ou précédente, utilisez :
Ctrl+Maj+Flèche haut (Naviguer > Accéder à > Membre précédent) ou Ctrl+Maj+Flèche bas (Naviguer > Accéder à > Membre suivant)
Rappels dans votre code Java Lorsque vous balisez un commentaire dans du code source Java avec la marque "TODO", le compilateur Java crée automatiquement une tâche correspondante comme aide-mémoire. L'ouverture de la tâche vous ramène à la balise "TODO" figurant dans le code. Utilisez la page des préférences Java > Balises de tâche pour configurer d'autres balises spéciales (telle que "FIXME") que vous souhaitez voir apparaître dans la liste des tâches.

Balises de tâche dans l'éditeur et la vue Tâches

Sélection de variables sur les fins dans les boîtes de dialogue d'ouverture et d'accès Les boîtes de dialogue Ouverture et Accès à supportent à présent le caractère de fin '<'. Pour voir tous les types de la boîte de dialogue Ouverture d'un type qui se terminent par "Test", entrez le schéma "*Test<".
Si '<' n'est pas inclus dans le schéma, un astérisque '*' est ajouté au schéma. Si vous entrez "*Test" dans la boîte de dialogue Ouverture d'un type, vous verrez tous les types contenant "Test" dans le nom du type.
Aides contextuelles fixes Vous pouvez ouvrir le texte d'une aide contextuelle sous forme de fenêtre déroulante en appuyant sur F2 (Editer > Afficher une description de type info-bulle). Vous pouvez sélectionner et copier le contenu de cette fenêtre.

Fenêtre présentant le contenu de l'aide contextuelle

Aides contextuelles dans l'éditeur Java Saviez-vous qu'à l'aide des touches de modification (Maj, Ctrl, Alt) vous pouvez afficher différentes aides contextuelles dans l'éditeur Java ?
Lorsque vous déplacez le pointeur de la souris sur un identificateur dans l'éditeur Java, une aide contextuelle avec le Javadoc extrait de la source correspondante de cet élément s'affiche par défaut. Maintenez la touche Ctrl enfoncée pour voir le code de la source.

Aide contextuelle montrant le code de l'élément dans l'aide contextuelle

Vous pouvez modifier ce comportement et définir les aides contextuelles pour d'autres touches de modificateur dans Préférences > Java > Editeur > Aides contextuelles.
Ouverture et configuration de la documentation Javadoc externe Si vous souhaitez ouvrir la documentation Javadoc pour un type, une méthode ou une zone à l'aide de Maj+F2 (Naviguer > Ouvrir le Javadoc externe), vous devez d'abord spécifier les emplacements de la documentation à la bibliothèque parent des éléments (JAR, dossier classe) ou au projet (dossier source).
Pour les bibliothèques, ouvrez la page du chemin de compilation (Projet > Propriétés > Chemin de compilation Java), accédez aux bibliothèques, développez le noeud de la bibliothèque où vous pouvez éditer le noeud 'Emplacement du Javadoc'. La documentation peut être locale sur votre système de fichiers ou sur un serveur Web.

Configuration de l'emplacement du Javadoc dans la boîte de dialogue du chemin de compilation Java

Pour les types, les méthodes ou les zones des dossiers source, accédez à Projet > Propriétés > Emplacement du Javadoc).

Vues Java

La vue Hiérarchie des types prend en charge le regroupement par type de définition La vue Méthodes de la hiérarchie des types permet de trier les méthodes du type sélectionné par ses types de définition. Par exemple, pour AbstractList vous pouvez voir qu'il contient des méthodes définies dans Objet, Collection et Liste :

Tri des membres par type de définition dans la hiérarchie des types

Astuces dans la hiérarchies des types
  • Mettez en évidence la hiérarchie des types sur un nouveau type en appuyant sur F4 (Naviguer > Ouvrir la hiérarchie des types) sur un élément ou un nom sélectionné.
  • Vous pouvez ouvrir la vue Hiérarchie non seulement pour afficher les types mais également pour afficher les packages, les dossiers source, les archives JAR et les projets Java.
  • Vous pouvez faire glisser et déplacer un élément dans la vue Hiérarchie pour qu'il soit mis en évidence.
  • Vous pouvez modifier l'orientation qui par défaut est verticale et passer à une orientation horizontale de la vue Hiérarchie à l'aide du menu de la barre d'outils de la vue.
Recherche de l'endroit où est implémenté une méthode dans la hiérarchie Pour savoir quels types d'une hiérarchie remplacent une méthode, utilisez la fonction 'Afficher les membres de la hiérarchie'.
  • Sélectionnez la méthode à rechercher et appuyez sur F4 (Naviguer > Ouvrir la hiérarchie des types). Cette opération ouvre la vue Hiérarchie des types sur le type de déclaration de la méthode.
  • La méthode étant sélectionnée dans la vue Hiérarchie, cliquez sur le bouton de la barre d'outils 'Verrouiller la vue et afficher les membres de la hiérarchie'.
  • La vue Hiérarchie n'affiche plus que les types qui implémentent ou définissent la méthode 'locked'. Par exemple, vous pouvez voir que 'isEmpty()' est défini dans 'Liste' et implémenté dans 'ArrayList' et 'Vector', mais pas dans 'AbstractList'.

Verrouillage et affichage des membres de la hiérarchie

Structure de packages hiérarchique comparée à une version à plat Une option de la vue Packages Java (et de la vue Packages) permet de modifier la façon dont les packages sont affichés. L'option Hiérarchique affiche les packages sous forme d'arborescence, avec des sous-packages sous les packages. L'option A plat les affiche de manière standard, sous forme de liste à plat avec tous les packages et les sous-packages apparentés.
Présentation de packages à plat Présentation de package hiérarchique
Packages logiques La vue Packages Java (perspective Navigation Java) regroupe les packages de même nom parmi les dossiers source d'un projet. La vue Packages contenant un package logique s'affiche alors.

Perspective Navigation Java contenant un package logique

Compression des noms de package Si vos noms de package sont très longs, vous pouvez configurer les afficheurs afin qu'ils présentent un nom compressé. Le schéma de compression peut être configuré dans Préférences > Java > Aspect.

Configuration du schéma de compression dans la page des préférences d'aspect Java

A l'aide de cet exemple, les packages sont rendus de la façon suivante :

Noms de package compressés

Divers

JUnit Choisissez une méthode test JUnit et sélectionnez Exécuter > Exécuter en tant que > Test JUnit. Une configuration de lancement est alors créée pour exécuter le test sélectionné.
Masquage de la vue JUnit jusqu'à ce que des erreurs ou des incidents se produisent Vous pouvez configurer la vue JUnit pour qu'elle ne s'ouvre que lorsque des erreurs ou des incidents se produisent. De cette façon, la vue peut être définie comme vue rapide et ne jamais la regarder lorsqu'aucun test n'est défaillant. S'il n'y a pas d'erreur dans vos tests, l'icône Exécution en cours (le nombre de petits carrés verts augmente, indiquant la progression) s'affiche pendant leur exécution et l'icône Exécution terminée s'affiche une fois qu'ils sont terminés. Si cependant, des erreurs ou des incidents se produisent, l'icône se transforme en Un incident ou une erreur s'est produit (ou Exécution terminée avec incident ou erreur si les tests sont terminés) et la vue JUnit s'affiche. Ce comportement peut être configuré dans la page des préférences Java > JUnit.
Comparaison structurelle de la source Java Une comparaison structurelle d'une source Java ignore l'ordre textuel des éléments Java, tels que les méthodes et les zones et affiche mieux quels éléments ont été modifiés, ajoutés ou supprimés.
Pour initialiser une comparaison structurelle de fichiers Java, vous avez deux options :
  • Sélectionnez deux unités de compilation Java et sélectionnez Comparer à > Réciproquement dans le menu contextuel de la vue. Si les fichiers comportent des différences, ils sont ouverts dans un éditeur de comparaison. La sous-fenêtre supérieure affiche les éléments Java différents. Si vous cliquez deux fois sur l'un d'eux, la source de l'élément apparaît dans la sous-fenêtre inférieure.
  • Dans un contexte où une comparaison de fichier est impliquée (une synchronisation CVS par exemple), un double clic sur un fichier Java affiche non seulement le contenu du fichier dans un afficheur de comparaison de texte, mais il effectue également une comparaison structurelle et ouvre une nouvelle sous-fenêtre affichant les résultats.

Comparaison structurelle de la source Java

Vous pouvez même ignorer les commentaires et les changements de formatage lors de la comparaison structurelle. Pour ce faire, activez l'option Ignorer les espaces à l'aide du bouton de la barre d'outils de l'éditeur de comparaison ou du menu déroulant de la vue Synchronisation CVS.
Comparaison structurelle de fichiers de propriétés Une comparaison structurelle de fichiers de propriétés Java (extension .properties) ignore l'ordre textuel des propriétés et affiche mieux quelles propriétés ont été modifiées, ajoutées ou supprimées.
Pour initialiser une comparaison structurelle de fichiers de propriétés, vous avez deux options :
  • Choisissez deux fichiers dans la vue Packages ou Navigateur et sélectionnez Comparer à > Réciproquement dans le menu contextuel de la vue. Si les fichiers comportent des différences, ils sont ouverts dans un éditeur de comparaison. La sous-fenêtre supérieure montre les propriétés affectées. Si vous cliquez deux fois sur l'une d'elles, la source de la propriété apparaît dans la sous-fenêtre inférieure.
  • Dans un contexte où une comparaison de fichier est impliquée (une synchronisation CVS par exemple), un double clic sur un fichier de propriétés affiche non seulement le contenu du fichier dans un afficheur de comparaison de texte, mais il effectue également une comparaison structurelle et ouvre une nouvelle sous-fenêtre affichant les résultats.

Comparaison structurelle de fichiers de propriétés

Définition de préfixes ou de suffixes pour les zones, les paramètres et les variables locales En plus de la configuration du préfixe ou du suffixe des zones, vous pouvez également spécifier le préfixe ou le suffixe des zones statiques, des paramètres et des variables locales. Ces paramètres de la page de préférences Java > Génération de code sont utilisés dans l'assistant de contenu, le correctif rapide et la propagation des modifications chaque fois qu'un nom de variable doit être calculé.

Conventions de dénomination dans la page des préférences de génération du code

L'organisation des importations ne fonctionne pas que sur des fichiers simples Vous pouvez appeler l'option d'organisation des importations sur des ensembles d'unités de compilation, des packages, des dossiers source ou des projets Java.
Utilisation de paramètres de compilation spécifiques au projet Chaque projet peut décider d'utiliser les paramètres de compilation généraux ou de définir des paramètres spécifiques à un projet. Sélectionnez le projet et ouvrez la page de compilation Java dans les propriétés du projet (Projet > Propriétés > Compilateur Java)

Paramètres de compilation Java spécifiques au projet

Vous pouvez également configurer des paramètres spécifiques au projet pour les balises de tâche Java (tâches TODO).
Utilisation d'un JRE spécifique pour un projet Une fois les projets créés, le JRE sélectionné dans Préférences > Java > JRE installés leur est ajouté par défaut. Pour définir un JRE spécifique à un projet, ouvrez la page des propriétés du chemin de compilation Java du projet (Projet > Propriétés > Chemin de compilation Java), ouvrez la page Bibliothèques, sélectionnez 'Bibliothèque système JRE' et cliquez sur Editer. Dans la boîte de dialogue Edition d'une bibliothèque, vous pouvez choisir d'utiliser le JRE par défaut ou un JRE spécifique à un projet.

Edition de la bibliothèque système JRE

Débogage

Arrêt dans main

Vous pouvez utiliser l'option Arrêter dans main dans une configuration de lancement d'application Java afin que le programme s'arrête à la première ligne exécutable de la méthode main lorsque vous l'exécutez en mode débogage.

Onglet Main avec l'option Arrêter dans main sélectionnée

Points d'arrêt conditionnels Vous pouvez utiliser des points d'arrêt conditionnels dans Propriétés du point d'arrêt... pour contrôler le moment où un point d'arrêt met réellement fin à l'exécution. Vous pouvez indiquer si vous souhaitez que le point d'arrêt suspende l'exécution uniquement si la condition est vérifiée (true) ou si la valeur de la condition change.

Boîte de dialogue des propriétés d'un point d'arrêt

Désactivation de points d'arrêt S'il s'avère que vous ajoutez et supprimez fréquemment un point d'arrêt au même endroit, désactivez le point d'arrêt lorsque vous n'en avez plus besoin (à l'aide de l'option Désactiver le point d'arrêt dans le menu contextuel du point d'arrêt ou la vue Points d'arrêt) et réactivez-le lorsque vous en avez à nouveau besoin.

Action de désactivation d'un point d'arrêt dans le menu contextuel de la règle

Changement des valeurs de variable

Lorsqu'une unité d'exécution est interrompue dans le débogueur, vous pouvez modifier les valeurs des primitives Java et des chaînes de la vue Variables. Dans le menu contextuel de la variable, sélectionnez Modifier la valeur de la variable.

Boîte de dialogue de modification de la valeur de la variable

Valeurs de la variable dans l'aide contextuelle Lorsqu'une unité d'exécution est interrompue et que vous placez le curseur sur une variable dans l'éditeur Java, la valeur de cette variable s'affiche sous forme d'info-bulle.

Info-bulle sur la valeur de la variable dans l'éditeur

Passage au cadre Lors de l'exécution du code pas à pas, il peut arriver que vous alliez trop loin ou que vous ignoriez une ligne dans laquelle vous aviez l'intention d'entrer. Plutôt que de redémarrer votre session de débogage, vous pouvez utiliser l'action Passer au cadre pour rapidement revenir au début d'une méthode. Sélectionnez le cadre de pile correspondant à la méthode Java que vous souhaitez redémarrer et sélectionnez Passer au cadre dans son menu contextuel. Le pointeur de l'instruction courante est réinitialisé sur la première instruction exécutable de la méthode. Notez que ceci fonctionne également pour les piles de cadre inférieures. L'action Passer au cadre est disponible uniquement lors du débogage avec une VM version 1.4 ou supérieure ou avec la VM J9.
Remplacement de code à chaud Le débogueur prend en charge la fonction de remplacement du code à chaud lors du débogage avec une VM version 1.4 ou supérieure ou la VM J9. Ceci vous permet d'effectuer des modifications dans le code en cours de débogage. Notez que certaines modifications, telles que des méthodes nouvelles ou supprimées, des variables de classe ou des classes internes ne peuvent pas être chargées à chaud.
Avance d'un pas avec entrée dans les sélections

Le débogueur Java permet d'avancer d'un pas avec entrée dans une seule méthode au sein d'une série d'appels de méthode chaînés ou imbriqués. Mettez simplement en évidence la méthode dans laquelle vous souhaitez avancer d'un pas avec entrée et sélectionnez Avancer d'un pas avec entrée dans la sélection dans le menu contextuel de l'éditeur Java.

Avance d'un pas avec entrée dans la sélection

Contrôle
de la console
La sortie affichée dans la console peut être verrouillée sur un processus spécifique à l'aide d'un menu déroulant de la barre d'outils de la vue Console. Un nouveau bouton Arrêt défil empêche la console de défiler automatiquement lorsqu'une nouvelle sortie est ajoutée.

Vue Console avec menu déroulant du processus

Création d'éléments de contrôle Un élément de contrôle est une expression dans la vue Expressions dont la valeur est mise à jour lors du débogage. Vous pouvez créer des éléments de contrôle à partir de l'éditeur Java en sélectionnant une expression ou une variable et en choisissant Contrôle dans son menu contextuel ou le menu supérieur Exécution).
Points de contrôle

Un point de contrôle est un point d'arrêt qui interrompt l'exécution chaque fois qu'une variable spécifiée est accédée ou modifiée. Pour définir un point de contrôle, sélectionnez une variable dans la vue Structure et choisissez Ajouter/supprimer un point de contrôle dans son menu contextuel. Pour configurer un point de contrôle, sélectionnez-le dans la vue Points d'arrêt et choisissez Propriétés... dans son menu contextuel. Les propriétés les plus importantes pour ce type de point d'arrêt sont les cases à cocher Accès et Modification qui contrôlent le moment où le point d'arrêt peut interrompre l'exécution.

Boîte de dialogue des propriétés d'un point d'arrêt

Vue Unités d'exécution et moniteurs

La vue Unités d'exécution et moniteurs du débogueur montre quelles unités d'exécution détiennent des verrous et les quelles attendent d'en obtenir un.

Vue Moniteurs montrant les cycles de blocage

Filtres de progression Ces filtres empêchent le débogueur de s'interrompre dans certaines classes et packages lors de l'avance d'un pas avec entrée dans le code. Les filtres de progression sont établis dans Fenêtre > Préférences > Java > Débogage > Filtrage de progression. Ils prennent effet lorsque l'action Progression avec filtres (sous le menu de la barre d'outils de débogage) est sélectionnée. Dans la vue Débogage, le package ou le type de déclaration du cadre de pile sélectionné peut être rapidement ajouté à la liste des filtres en sélectionnant Filtrer les types ou Filtrer les packages dans le menu contextuel du cadre de pile.
Utilisation du testeur de code

Si vous souhaitez expérimenter l'API ou tester un nouvel algorithme, il est souvent plus facile d'utiliser une page de testeur de code Java que de créer une classe. Une page de testeur de code est un conteneur pour les fragments de code aléatoires que vous pouvez exécuter à tout moment sans contexte. Pour créer une page de testeur de code dans la perspective Java, sélectionnez Fichier > Nouveau > Page de testeur de code dans le menu du plan de travail ou cliquez sur le bouton Page de testeur de code Bouton de la barre d'outils Page de testeur de code dans la barre d'outils du plan de travail. Entrez le code à exécuter, puis sélectionnez-le. Il existe trois façons d'exécuter le code :

  • Exécutez le code sélectionné et placez le résultat retourné dans la vue Expressions.
  • Exécutez le code sélectionné et placez la chaîne résultante dans la page du testeur de code.

    Page de testeur de code affichant le résultat

  • Exécutez le code sélectionné (et ignorez tout résultat retourné).

Ces actions se trouvent dans la barre d'outils du plan de travail et également dans le menu contextuel de la page du testeur de code.

Edition
de configuration
de lancement
Maintenez enfoncée la touche Ctrl et sélectionnez Exécuter ou Déboguer dans le menu déroulant pour ouvrir la configuration de lancement associée pour l'édition. La configuration de lancement peut être également ouverte à partir du menu contextuel associé à un élément de la vue Débogage.
Configurations de lancement préférées

Les configurations de lancement apparaissent dans les menus déroulants Exécution/Débogage dans l'ordre lancé le plus récemment. Cependant, il est possible de forcer une configuration de lancement à toujours apparaître sur le dessus des menus déroulants en l'ajoutant aux favoris. Dans la page des préférences Déboguer > Historique de lancement, vous pouvez désigner des favoris par type de lancement (Exécution, Débogage, Outils externes).

Page des préférences Historique de lancement

A présent, le menu déroulant Débogage affiche les configurations ajoutées aux favoris, avec le reste des configurations dans l'ordre de l'historique.

Menu déroulant Débogage de la barre d'outil du plan de travail

Modules de formatage des détails

Dans les vues Variables & Expressions, la sous-fenêtre de détails affiche une représentation développée de la variable sélectionnée. Par défaut, cette représentation développée est le résultat de l'appel de toString() sur l'objet sélectionné, mais vous pouvez créer un module de formatage des détails personnalisé qui sera utilisé à la place, en sélectionnant Nouveau module de formatage des détails dans le menu contextuel de la variable. Ce module de formatage des détails sera utilisé pour tous les objets du même type. Vous pouvez visualiser et éditer tous les modules de formatage des détails dans la page des préférences Java > Déboguer > Modules de formatage des détails.

Boîte de dialogue Module de formatage des détails

Exécution du code avec des erreurs de compilation

Vous pouvez exécuter et déboguer du code qui ne s'est pas compilé correctement. La seule différence entre l'exécution de code avec et sans erreur de compilation est que si une ligne de code comportant une erreur de compilation est exécutée, vous pouvez vous trouver dans l'un des deux cas suivants :

  • Si la préférence 'Suspendre l'exécution en cas d'erreurs de compilation' est sélectionnée dans la page des préférences Java > Déboguer et que vous êtes en cours de débogage, la session de débogage sera interrompue comme si un point d'arrêt était atteint. Notez que si votre machine virtuelle prend en charge le remplacement de code à chaud, vous pouvez alors corriger l'erreur de compilation et reprendre le débogage.
  • Sinon, l'exécution prend fin avec une erreur de compilation non résolue.

Il est important d'insister que le fait que tant que le chemin d'exécution évite les lignes de code comportant des erreurs de compilation, vous pouvez procéder à l'exécution et au débogage normalement.

Renvoi à la ligne dans la vue Variables La zone de détails des vues Variables et Expressions du débogueur prend en charge la fonction de renvoi à la ligne, disponible à partir du menu déroulant de la vue.

Action de renvoi à la ligne dans le menu déroulant de la vue Variables

Assistant de code dans le débogueur

L'assistant de code est disponible dans de nombreux contextes, au delà de l'écriture de code dans l'éditeur Java :

  • lors de la saisie d'une condition pour un point d'arrêt,
  • dans la sous-fenêtre Détails de la vue Variables et Expressions,
  • lors de la saisie d'un fragment de code du module de formatage des détails,
  • lors de la saisie de code dans une page du testeur de code,
  • dans la vue Affichage.

Assistant de code de la vue Affichage

Détails de la ligne de commande Vous pouvez toujours voir la ligne de commande exacte utilisée pour lancer un programme en mode d'exécution ou débogage en sélectionnant Propriétés dans le menu contextuel d'un processus ou d'une cible de débogage, même si le lancement est terminé.

Détails de la ligne de commande

Hyperliens de
trace de pile

Les traces de pile Java de la console apparaissent sous forme d'hyperliens. Lorsque vous placez le pointeur de la souris sur une ligne de trace de pile, le pointeur se transforme en main et la trace de pile est soulignée. Cliquez sur le bouton de la souris pour ouvrir le fichier source Java associé et placez le curseur sur la ligne correspondante.

Traces de pile dans la vue Console avec des hyperliens

Copyright (c) 2000, 2003 IBM Corporation and others. All Rights Reserved.