Conseils et astuces

Edition Recherche Navigation Vues Débogage Divers

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 les commentaires Javadoc

Suppression de types dans l'assistant de code

Pour que certains types n'apparaissent pas dans l'assistant de contenu, utilisez la fonction de filtrage des types configurée dans la page des préférences Fenêtre > Préférences > Java > Aspect > Filtres de type. Les types correspondant à l'un de ces masques de filtre n'apparaîtront pas dans la boîte de dialogue Ouverture d'un type et ne seront pas disponibles pour l'assistant de code, les correctifs rapides et l'organisation des importations. Ces masques de filtre n'affectent pas les vues Package et Hiérarchie des types.

Page des préférences des filtres de type
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.

Recommandations 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 Style de code (Fenêtre > Préférences > Java > Style de code).

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 d'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 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 et en la maintenant enfoncée, pendant la sélection de l'exécution.
Assistant de contenu incrémentiel Par défaut, l'assistant de contenu va maintenant Insérer les préfixes courants automatiquement, sur le modèle de l'extension de shell Unix. Pour modifier ce comportement, désélectionnez le paramètre dans la page des préférences Fenêtre > Préférences > Java > Editeur > Assistant de code.
Boîte de dialogue 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 de 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 Style de code (Fenêtre > Préférences > Java > Style de code).
Utilisation de l'assistant de contenu pour créer des méthodes Getter et Setter Vous pouvez également créer des méthodes getter et setter à l'aide de l'assistant de contenu. 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 getter ou setter.
Assistant de code pour la création d'une méthode setter
Suppression de méthodes Getter et Setter avec une zone Lorsque vous supprimez une zone d'une vue, Eclipse peut vous proposer de supprimer ses méthodes Getter et Setter. 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 Style de code (Fenêtre > Préférences > Java > Style de code).
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 :
Exemple de méthode déléguée
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é.
Utilisation de modèles pour créer une méthode Vous pouvez définir un nouveau modèle (Fenêtre > 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 nouvelles propositions de 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éer une méthode'

Utilisation du correctif rapide pour modifier une signature de méthode Ajoutez un argument à un appel de méthode sur un site d'appel. Utilisez ensuite Correctif rapide (Ctrl+1) pour ajouter le paramètre requis dans l'instruction de la méthode.

Correctif rapide Modification de la signature

Utilisez l'assistant de contenu pour créer un raccord de constructeur A l'emplacement où vous voulez ajouter le nouveau constructeur, utilisez l'assistant de contenu après avoir saisi les premières lettres du nom du constructeur.
Création d'un constructeur à l'aide de l'assistant de code
Création de zones à partir de paramètres Avez-vous besoin de créer des zones pour stocker les arguments transmis au constructeur ? Utilisez l'Assistant rapide (Ctrl + 1) sur un paramètre pour créer l'affectation et la déclaration de zone et laisser Eclipse proposer un nom en fonction de vos préférences de style de code.
Assistant rapide Affectation d'un paramètre à une nouvelle zone
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 de 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'. Même sans opération de sauvegarde ou de génération, 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 une proposition Ajouter des méthodes non implémentées

Remplacement d'une méthode à partir d'une classe de base 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 les méthodes doivent être ajoutées et appelez Source > Remplacer/Implémenter des méthodes. Une boîte de dialogue s'ouvre permettant de choisir les méthodes à remplacer.

Boîte de dialogue Remplacer/Implémenter des méthodes

Changement de nom dans un fichierPour 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 dans le fichier. 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 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 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 de correctif rapide Exception non détectée

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

Assistant rapide Remplacement d'une 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.

Assistant rapide Affectation d'une instruction à une 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.
Affectation de l'assistant rapide
Moins de travail avec les expressions de transtypage Ne perdez pas trop de temps avec la saisie des transtypages. Commencez par les ignorer, puis ajoutez-les à l'aide de l'assistant rapide une fois que vous avez terminé l'instruction.
Par exemple, pour les affectations :
Ajout d'un transtypage dans l'affectation
Ou pour les arguments de méthode :
Ajout d'un transtypage pour les arguments de méthode
Ou pour les cibles des appels de méthode :
Ajout d'un transtypage dans les cibles des appels de méthode
Affectation d'une expression transtypée
Nouveautés de la version 3.1
Après une vérification 'instanceof', il est très courant de transtyper l'expression et de l'affecter à une nouvelle variable locale. Pour éviter des opérations de saisie, appelez l'Assistant rapide (Ctrl+1) dans le mot clé 'instanceof' :
Correctif rapide 'Introduire une nouvelle variable locale avec un type transtypé'
Des assistants rapides supplémentaires
Nouveautés de la version 3.1
Consultez la page assistant rapide pour obtenir la liste complète des transformations de code disponibles. Dans cette liste figurent notamment les transformations suivantes
  • Inverser les instructions if
  • Convertir 'switch' en 'if-else'
  • Remplacer 'if-else' par un conditionnel
    ...et bien d'autres encore
Pour obtenir une liste des correctifs rapides, cliquez ici.
Raccourcis pour les assistants et les correctifs rapides
Nouveautés de la version 3.1
Vous pouvez appelez directement certains des assistants rapides les plus utilisés - tels que Renommer dans un fichier et Affecter à Local - via les combinaisons de touches Ctrl+2 R et Ctrl+2 L. Consultez la page de préférences Touches pour connaître les correctifs rapides pouvant être appelés directement.

Page de préférences Touches avec raccourcis pour les assistants rapides

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.

Assistant rapide Délimitation à l'aide 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

Pour créer vos propres modèles, accédez à la page des préférences Fenêtre > 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 :

Modèle d'itération arrière
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 Fenêtre > Préférences > Java > Editeur > Assistant de code (voir la case 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 de l'assistant de code

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

noms d'argument insérés à l'aide de 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, en fonction de leurs types déclarés. Cela peut être configuré par la case Noms d'argument remplis par proposition dans la page des préférences Fenêtre > Préférences > Java > Editeur > Assistant de code.

Insertion automatique d'arguments de type
Nouveautés de la version 3.1
L'activation de l'option Compléter les noms d'arguments une fois la méthode terminée de la page de préférences Fenêtre > Préférences > Java > Editeur > Assistant de code est également utile lorsque vous travaillez avec des types paramétrés dans J2SE 5.0.
Assistant de code pour un type paramétré
aboutit à
L'assistant de code a deviné et inséré le type d'argument
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).

Assistant rapide Suppression d'une instruction de délimitation

Correction orthographique Vous pouvez activer la fonction de correction orthographique dans l'éditeur Java, dans la page des préférences Général > Editeurs > Editeurs de texte > Vérification de l'orthographe. Les erreurs d'orthographe sont affichées dans l'éditeur et les correctifs rapides correspondants sont disponibles :

Exemple de suggestion 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 de nouvelles lignes et les correctifs rapides permettent d'ajouter immédiatement de nouveaux termes au dictionnaire. Les contributions de dictionnaire sont acceptées.

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 Alt+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, pour que le texte figurant entre les deux crochets soit sélectionné.

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

Smart Javadoc Entrez '/**' 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 nouveau commentaire peuvent être configurés dans Fenêtre > Préférences > Java > Style de code > Modèles de code
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 Fenêtre > Préférences > Java > Style de code > Modèles de code permet de personnaliser le code généré et les commentaires de la même manière que pour les modèles normaux. Ces modèles de code sont utilisés chaque fois que du code est généré.
Page des préférences Modèles de code

Depuis la version 3.1, il est possible de projeter des modèles de code spécifiques qui sont partagés dans l'équipe si votre projet est partagé. Ouvrez les Propriétés du projet afin d'activer les paramètres spécifiques au projet.
Créer des commentaires dans votre code Vous pouvez ajouter des commentaires de façon explicite en cliquant sur Source > Ajouter un commentaire (Ctrl+Maj+J) ou automatiquement à l'aide des divers assistants, propagations des modifications ou correctifs rapides.
Configurez les modèles de commentaires dans la page de préférences Fenêtre > Préférences > Java > Style de code > Modèles de code.
Activez ou désactivez la génération automatique de commentaires, soit directement dans l'assistant (en utilisant par exemple la case 'Générer un commentaire' dans les nouveaux assistants de type Java), soit via la case 'Ajouter automatiquement de nouveaux commentaires pour les nouveaux types et méthodes' de la page Fenêtre > Préférences > Java > Style de code.
Ces paramètres peuvent également être configurés par projet. Ouvrez les Propriétés du projet afin d'activer les paramètres spécifiques au projet.
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 Fenêtre > 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 a very long message.";

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

String message= "This is a very" + 
           " long message.";

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

Saisie avancée et contrôle de cette fonction Les fonctions de saisie avancée de l'éditeur Java facilitent votre travail quotidien. Vous pouvez les configurer dans la page de préférences Java > Editeur > Saisie.

Page des préférences Saisie de l'éditeur Java

Si l'option Insertion automatique des points-virgules à l'emplacement correct est activée, lorsque vous saisissez un point-virgule, le curseur se place automatiquement à la fin de l'instruction avant d'insérer celui-ci. Cela vous évite de déplacer vous-même le curseur.
Vous pouvez annuler automatiquement ce positionnement en appuyant sur la touche de retour arrière juste après.

Correction du retrait du code à l'aide d'une touche La fonction Source > Corriger le retrait ou Ctrl+I est particulièrement utile. Sélectionnez le code dans lequel le retrait est incorrect et appelez l'action.
Menus rapides pour l'action source et l'action de propagation des modifications

Vous pouvez accéder à l'action source et à l'action 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 de propagation des modifications rapide
Recherche de code inutilisé Le compilateur Java détecte un code inaccessible, des variables inutilisées, des paramètres, des importations et des types, des méthodes et des zones privés inutilisés. Ce paramètre se trouve dans la page de préférences Fenêtre > Préférences > Java > Compilateur > Erreur/Avertissements (ou il est défini pour un projet à l'aide de l'option Projet > Propriétés > Compilateur Java > Erreur/Avertissements).

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.
Traitement des commentaires Javadoc Le compilateur Java d'Eclipse peut traiter 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 Fenêtre > 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 et peuvent être résolus à l'aide de l'option Edition > Correctif rapide (Ctrl+1) :

Erreurs détectées dans Javadoc

Supprimer les avertissements
Nouveautés de la version 3.1
Dans la version 5.0 de J2SE, vous pouvez supprimer tous les avertissements optionnels émis par le compilateur à l'aide de l'annotation 'SuppressWarnings'.
Dans cet exemple, 'addAll()' est signalée comme une méthode non utilisée. Le Correctif rapide (Ctrl+1) est utilisé pour ajouter une annotation SuppressWarnings de façon à ce que l'avertissement ne soit pas affiché pour cette méthode.
Correctif rapide pour ajouter une annotation SuppressWarning

Recherche

Localisation des variables et de leur accès en lecture/écriture Vous pouvez localiser les variables et 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.

Accès en lecture et écriture à une zone

Vous pouvez également utiliser la fonction Marquer les occurrences pour mettre en évidence les occurrences de manière dynamique. La recherche peut s'effectuer sur plusieurs fichiers en utilisant les fonctions de recherche générale (Recherche > Références).

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 :

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

Recherche d'une méthode avec le type de retour spécifié

Suppression des résultats Javadoc de la recherche Java Par défaut, la recherche Java recherche des références dans le code Java et Javadoc. Si vous ne souhaitez pas trouver de références au sein de Javadoc, vous pouvez filtrer ces correspondances en activant l'option 'Filtre Javadoc' dans le menu d'affichage (symbole triangulaire) de la vue Recherche
Suivi des chaînes d'appel de méthode à l'aide de la hiérarchie d'appels

Avez-vous déjà perdu du temps à rechercher encore et encore des références à des méthodes ? La nouvelle hiérarchie d'appels permet de suivre les chaînes d'appel longues ou complexes sans perdre le contexte d'origine : vous n'avez qu'à appeler une méthode et appeler Naviguer > Ouvrir la hiérarchie d'appels (Ctrl+Alt+H).

Vue Hiérarchie d'appels

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 > Général > Editeurs > Editeurs de texte > Prise en charge de la navigation de style hyperlien.
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 > Structure rapide) pour afficher une structure en place du fichier source courant.

Structure en place

Les structures en place montrent les membres hérités Appuyez de nouveau sur Ctrl+O ou Ctrl+F3 pour ajouter les membres hérités à une structure en place ouverte. Les membres hérités possèdent un libellé gris. Filtrez et triez la structure à l'aide du menu qui se trouve dans le coin supérieur droit.

Vue Structure rapide

Hiérarchie en place Recherchez les destinataires possibles d'un appel virtuel à l'aide de la hiérarchie rapide. Placez le curseur dans l'appel de méthode et appuyez sur Ctrl+T (Navigation > Hiérarchie rapide). La vue affiche tous les types qui implémentent la méthode avec une icône pleine.

Vue Hiérarchie rapide

Appuyez de nouveau sur Ctrl+T pour passer à la hiérarchie des supertypes.

Mise en évidence avancée L'éditeur Java peut 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). Vous pouvez consulter les différentes options dans la page de préférences Fenêtre > Préférences > Java > Editeur > Coloration de syntaxe.

Exemple de mise en évidence avancée.

Régions initialement réduites Vous pouvez spécifier les régions devant être réduites par défaut lorsqu'un éditeur est ouvert. Consultez la page de préférences Fenêtre > Préférences > Java > Editeur > Réduire pour effectuer cette personnalisation.

Page des préférences Réduction

Marquage des occurrences Lorsque vous utilisez l'éditeur, activez l'option Marquer les occurrences dans la barre d'outils (Illustration du bouton Marquer les occurrences de la barre d'outils) ou appuyez sur Alt+Maj+O.
Editeur avec occurrences de balise 'info' marquées
Lorsque vous sélectionnez un type de retour, vous pouvez voir les points de sortie de la méthode. Sélectionnez une exception pour voir où elle est générée.
Editeur avec occurrences de balise 'info' marquées
Sélectionnez une super classe ou une interface pour voir les remplacements de méthodes ou implémentez une méthode à partir du super type sélectionné.
Paramétrez l'option Marquer les occurrences dans Fenêtre > Préférences > Java > Editeur > Marquer les occurrences..
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)
Contrôle de la navigation entre les annotations Utilisez les boutons Suivant/Précédent de la barre d'outils Annotation ou sélectionnez Naviguer > Annotation suivante (Ctrl+.) et Navigation > Annotation précédente (Ctrl+,) pour passer d'une annotation à une autre dans un fichier source Java. A l'aide des menus déroulants des boutons, vous pouvez définir les annotations à arrêter :

Menu déroulant des boutons d'annotation Suivant/Précédent.

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 Fenêtre > Préférences > Compilateur 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 des tâches

Astuces dans la boîte de dialogue Ouverture d'un type
Nouveautés de la version 3.1
  • Pour faire une recherche rapide d'un type, il vous suffit de saisir les majuscules du nom de celui-ci : IOOBE permet de trouver IndexOutOfBoundsException
  • Pour visualiser tous les types se terminant par un suffixe donné, par exemple tous les Tests, tapez '*Test<' afin de ne pas afficher les types comportant ce suffixe ailleurs qu'à la fin de leur nom.
Boîte de dialogue Ouvrir un type avec la correspondance camel-case
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 du contenu de l'info-bulle

Aides contextuelles dans l'éditeur Java Vous pouvez afficher les diverses info-bulles de l'éditeur Java à l'aide des touches de modification (Maj, Ctrl, Alt).
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.

Info-bulle affichant le code de l'élément de l'info-bulle

Vous pouvez modifier ce comportement et définir les aides contextuelles pour d'autres touches de modificateur dans Fenêtre > Préférences > Java > Editeur > Aides contextuelles.
Signature déduite de méthode générique
Nouveautés de la version 3.1
Vous pouvez utiliser l'aide contextuelle pour afficher la signature déduite de méthode générique.

Aide contextuelle montrant la signature déduite de méthode générique

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 génération (Projet > Propriétés > Chemin de génération 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, dans un dossier ou une archive, ou sur un serveur Web.

Configuration de l'emplacement de Javadoc dans la boîte de dialogue du chemin de génération Java

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

Vues Java

Organisation de l'espace de travail avec plusieurs projets
Nouveautés de la version 3.1
Pour activer un nouveau mode affichant les jeux de documents comme des éléments de niveau supérieur, utilisez la fonction Afficher > Jeux de documents du menu d'affichage de la vue Packages. Ce mode vous permet de gérer beaucoup plus facilement les espaces de travail comportant de nombreux projets.

Vue Packages dans le mode Jeu de document

Pour déterminer les jeux de documents à afficher, utilisez la fonction Sélection des jeux de documents du menu d'affichage de la vue Packages. Cette boîte de dialogue vous permet de créer de nouveaux jeux de documents Java, de déterminer lesquels doivent être affichés et dans quel ordre. Les jeux de documents peuvent également être réorganisés directement dans la vue Packages à l'aide des fonctions glisser-déposer et copier-coller.

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

Vue Déclaration

Vue Javadoc Il existe une 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 plates-formes qui le prennent en charge.

Vue Javadoc

Vue Hiérarchie des types et implémentations / définitions de méthodes 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 de la vue et affichage des membres dans la hiérarchie

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.
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 plus clairement 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 d'une 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 des 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 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.
  • 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 des fichiers de propriétés

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 de navigation Java contenant un package logique

Compression des noms de package Si vos noms de package sont très longs, vous pouvez configurer un nom compressé qui apparaît dans les afficheurs. Le schéma de compression peut être configuré dans >Fenêtre > Préférences > Java > Aspect.

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

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

Noms de package compressés

Manipulation du chemin de génération Java directement à partir de la vue Packages
Nouveautés de la version 3.1
Au lieu de manipuler le chemin de génération Java via Projet > Propriétés > Chemin de génération Java, vous pouvez utiliser les actions du menu contextuel de la vue Packages.
Par exemple, il est possible d'ajouter de nouveaux dossiers, archives et bibliothèques source au chemin de génération ou d'inclure/exclure des fichiers et dossiers d'un dossier source.
Menu contextuel du chemin de génération

Divers

Préférences spécifiques au projet
Nouveautés de la version 3.1

Toutes les options du compilateur et du style de code peuvent maintenant être définies par projet.
Ouvrez la page Propriétés du projet en cliquant sur Projet > Propriétés ou à l'aide des Préférences de l'espace de travail (par exemple Fenêtre > Préférences > Java > Style de code) afin d'activer les paramètres spécifiques au projet.
Page Propriétés du projet avec la boîte de dialogue 'Activer les paramètres spécifiques au projet
Les paramètres spécifiques au projet sont stockés dans un fichier de configuration à l'intérieur du projet (dans le répertoire 'Paramètres'). Lorsque vous partagez un projet dans une équipe, les membres reçoivent également ces paramètres spécifiques au projet.
Règles d'accès
Nouveautés de la version 3.1
La fonction Règles d'accès vous donne la possibilité de renforcer les règles API pour les types des bibliothèques référencées. Dans la page du chemin de génération Java (Projet > Propriétés > Chemin de génération Java), modifiez le noeud 'Règles d'accès' disponible sur les projets, archives, bibliothèques et dossiers de classes référencés.
Vous pouvez classer les packages ou les types de ces références dans les catégories suivantes :
  • Accessible
  • Déconseillé
  • Interdit
En fonction des paramètres configurés dans Fenêtre > Préférences > Java > Compilateur > Erreurs/Avertissements, le compilateur signalera les références déconseillées et interdites par des avertissements ou des erreurs.
Boîte de dialogue Configuration des règles d'accès
JUnit Choisissez une méthode test JUnit et sélectionnez Exécuter > Test JUnit Test dans le menu contextuel ou Exécuter > Exécuter en tant que > Test JUnit dans le menu principal. 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 Fenêtre > Préférences > Java > JUnit.
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

L'assistant de contenu est par exemple implémenté dans les assistants Nouvelle classe Java, Nouvelle interface Java et Nouveau test JUnit, ainsi que dans les boîtes de dialogue de propagation des modifications pour changer la signature de la méthode et déplacer les membres statiques.

Les propagations de modification Extraire la variable locale, Convertir la variable locale en zone et Introduire un paramètre offrent des propositions d'assistant de contenu pour le nom du nouvel élément.

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 Fenêtre > Préférences > Java > Style 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 est calculé.

Conventions de nom dans la page de préférences Style de 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.
Formatage de plusieurs fichiers Sélectionnez tous les fichiers Java à formater et choisissez Source > Format pour les formater tous. L'action de formatage est également disponible pour les packages, les dossiers source et les projets Java.
Utilisation de paramètres de compilation spécifiques au projet Chaque projet peut utiliser les paramètres de compilation généraux, mais vous pouvez 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 du compilateur Java spécifiques à un projet

Utilisation d'un JRE spécifique pour un projet Lors de la création de projets, le JRE ajouté par défaut est celui sélectionné dans Fenêtre > Préférences > Java > JRE installés. Pour définir un JRE spécifique à un projet, ouvrez la page des propriétés du chemin de génération Java du projet (Projet > Propriétés > Chemin de génération Java), puis 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 sélectionner le JRE par défaut ou un JRE spécifique à un projet pour ajouter les nouveaux projets.

Edition d'une bibliothèque système JRE

Propagation d'une balise d'élément déconseillé Le compilateur Java peut être configuré pour diagnostiquer les éléments déconseillés à l'aide des options de la page Fenêtre > Préférences > Java > Compilateur > Avancées.

Page des préférences du compilateur

A partir de cette configuration, le résultat est le suivant :

I.java

X.java

Y.java

Si vous ne parvenez pas à corriger une syntaxe de construction déconseillée, balisez comme déconseillé la méthode, la zone ou le type dans lequel elle se trouve. Vous montrez ainsi que vous avez remplacé une construction déconseillée et l'indicateur correspondant est propagé aux autres dépendants.

X.java

Y.java

Restauration suite à des incohérences Dans le cas assez rare d'un dysfonctionnement, JDT peut révéler certaines incohérences :
  • résultats manquants dans une recherche Java ou un type ouvert ;
  • éléments non valides dans la vue Packages.

Pour éliminer ces incohérences, effectuez les actions suivantes, en respectant l'ordre indiqué :
  1. Fermez tous les projets à l'aide de l'option de menu Fermer le projet du navigateur
  2. Quitter Eclipse et redémarrez-le
  3. Ouvrez tous les projets à l'aide de l'option de menu Ouvrir le projet du navigateur
  4. Déclenchez manuellement une génération totale de l'intégralité de l'espace de travail (Projet > Nettoyer)

Débogage

Lancement à partir du menu contextuel

Vous pouvez exécuter et déboguer les applications Java à partir du menu contextuel. Vous pouvez lancer un fichier source, un package, une méthode, un type, etc., en choisissant Exécuter en tant que (ou Déboguer en tant que) > Application Java dans le menu contextuel d'une vue ou d'un éditeur. Sinon, vous pouvez utiliser le raccourci de lancement des applications Java (Alt-Maj-D, J). Les actions de niveau supérieur Exécuter en tant que (ou Déboguer en tant que) sont également sensibles à l'éditeur actif ou à la sélection en cours.

Menu contextuel avec option de lancement

Evaluations dans le débogueur

L'évaluation des fragments de code est disponible à partir de divers endroits du débogueur. Si vous choisissez Affichage ou Inspection dans le menu contextuel de l'éditeur ou de la vue Variables, le résultat sera affiché dans un menu en incrustation dont le résultat pourra être envoyé à la vue Affichage ou Expressions.

Résultat d'une inspection dans un menu en incrustation

Gestion des vues dans les perspectives autres que celles de débogage

La vue Débogage gère automatiquement les vues liées au débogage en fonction de la vue sélectionnée (par exemple, affichage des vues Java pour les cadres de pile Java et des vues C pour les cadres de pile C). Par défaut, cette gestion automatique des vues n'intervient que dans la perspective Débogage, mais vous pouvez l'activer pour d'autres perspectives via la page des préférences Gestion des vues disponible à partir du menu déroulant Vue Débogage de la barre d'outils.

Variables d'environnement

Vous pouvez maintenant spécifier l'environnement utilisé pour lancer les applications Java via l'onglet Environnement.

Onglet Environnement de la boîte de dialogue de configuration du lancement

Substitutions de chaîne

Les variables sont maintenant prises en charge pour de nombreux paramètres des configurations de lancement des applications Java. Un bouton Variables est placé en regard de la plupart des zones prenant en charge les variables (c'est le cas des zones Programme et Arguments VM, par exemple). La zone Type Main prend également en charge les variables ; la variable ${nom_type_java} permet de créer une configuration qui exécutera le type sélectionné.

Onglet Arguments dans la boîte de dialogue Configuration de lancement

Structures logiques

L'action Structures logiques de la barre d'outils de la vue Variables présente d'autres structures pour les types standard. JDT fournit des vues logiques pour les mappes, les collections et les éléments composite SWT. Vous pouvez définir des structures logiques pour d'autres types à partir de la page de préférences Structures logiques.

Vecteur affiché comme structure logique dans la vue des variables

Arguments VM par défaut

Si vous spécifiez souvent les mêmes arguments pour une machine VM donnée, vous pouvez configurer Arguments VM par défaut dans la page des préférences JRE installés. Cela est plus pratique que de les spécifier pour chaque configuration de lancement.

Page des préférences JRE avec argument par défaut spécifié

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 S'arrêter sur 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.

Editeur de condition du point d'arrêt dans la boîte de dialogue Propriétés du 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 et réactivez-le lorsque vous en avez à nouveau besoin. Pour cela, vous pouvez utiliser l'option Désactiver le point d'arrêt du menu contextuel du point d'arrêt ou désélectionner le point d'arrêt dans la vue Points d'arrêt.

Vous pouvez également désactiver temporairement tous les points d'arrêt à l'aide de l'action Ignorer tous les points d'arrêt de la barre d'outils de la vue Points d'arrêt. Le débogueur ignore alors tous les points d'arrêt en conservant leur état actuel activé.

Action Désactiver le point d'arrêt du 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. Vous pouvez également modifier la valeur en en entrant une nouvelle dans la sous-fenêtre Détails et en utilisant l'action Affecter une valeur du menu contextuel (combinaison de touches CTRL-S).

Modification de la valeur des variables à partir de la sous-fenêtre Détails

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.

Aide contextuelle des valeurs de 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 la barre d'outils de la vue Débogage ou dans le menu contextuel du cadre de pile. Le pointeur de l'instruction courante est réinitialisé sur la première instruction exécutable de la méthode. Cela fonctionne également pour les piles de cadre inférieures.

Notez que 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. Dans certains cas, il se peut qu'une machine JVM ne parvienne pas à extraire les cadres désirés de la pile. Par exemple, il est généralement impossible de passer au cadre inférieur de la pile ou à tout cadre situé sous la méthode native.

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 remplacés à chaud, suivant le type de support fourni par une machine VM donnée.
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.

Cette fonction est utilisable ailleurs qu'à la ligne actuellement exécutée. Essayez d'effectuer un débogage jusqu'à un point d'arrêt et d'avancer pas à pas dans une méthode, quelques lignes en dessous du pointeur d'instruction actuel.

Avancer 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 de l'action Fixer la console de la barre d'outils de la vue Console. Une action Arrêt défil empêche également la console de défiler automatiquement lorsqu'une nouvelle sortie est ajoutée.

Vue Console avec menu déroulant des 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 de point d'arrêt

Unités d'exécution et moniteurs

Le débogueur Java peut afficher les informations du moniteur dans la vue Débogage. L'action Afficher les moniteurs du menu déroulant de la vue Débogage vous permet d'afficher les unités d'exécution détenant des verrous ainsi que celles attendant d'en acquérir. Les unités d'exécution bloquées sont signalées en rouge.

Vue Débogage 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. Lorsque l'option Utiliser les filtres de progression est activée (dans le menu et la barre d'outils de débogage), les filtres de progression sont appliqués à toutes les actions de progression. 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, créez un fichier avec une extension .jpage (ou utilisez l'assistant Nouveau : Java > Exécution/Débogage Java > Page de testeur de code). 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. L'action Organiser les favoris du menu déroulant approprié permet de configurer vos configurations de lancement favorites.

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 Fenêtre > Préférences > Java > Déboguer > Modules de formatage des détails.

Boîte de dialogue Modules 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 Fenêtre > 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 des mots 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 de point d'arrêt
  • Dans la sous-fenêtre Détails de la vue Variables & Expressions
  • Lors de la saisie d'un fragment de code du Module de formatage des détails
  • Lors de la saisie d'un fragment de code d'une Structure logique
  • Lors de la saisie de code dans une page du Testeur de code
  • Dans la vue Affichage

Menu en incrustation de l'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. Cliquez sur le bouton de la souris pour ouvrir le fichier source Java associé et placez le curseur sur la ligne correspondante. Si vous cliquez sur le nom de l'exception qui se trouve au sommet de la trace de pile, un point d'arrêt d'exception est créé.

Traces de pile dans la vue Console avec hyperliens