Interface utilisateur du débogueur

Le débogueur vous aide à rechercher et à corriger les erreurs qui se trouvent dans vos programmes. Lorsque vous débutez une session de débogage, l'interface utilisateur du débogueur s'affiche dans le volet message :

Sessions de débogage

Le débogueur vous permet de déboguer plusieurs processus dans plusieurs sessions de débogage. Les processus peuvent être dans le même projet JBuilder ou dans différents projets. Cela vous permet de déboguer un processus client et un processus serveur en même temps dans la même instance de JBuilder.

Les points de suivi, points d'arrêt et les classes avec le suivi désactivé sont enregistrés par projet. Tous les points d'arrêt et points de suivi s'appliquent à tous les processus du projet. Il existe une option pour désactiver les points d'arrêt pour une configuration d'exécution.

Pour commencer une nouvelle session de débogage, choisissez une des options suivantes. Elles utiliseront la configuration par défaut du projet.

Chaque session de débogage s'affiche sur un onglet séparé en bas de l'AppBrowser.

Pour terminer la session de débogage en cours et libérer la mémoire, choisissez l'icône Réinitialiser le programme  . Vous pouvez aussi quitter le programme en cliquant avec le bouton droit sur l'onglet correspondant à la session de débogage et en choisissant Retirer. Bien que vous soyez invité à arrêter le processus avant que l'onglet soit retiré, il vaut mieux utiliser d'abord Exécuter|Réinitialiser le programme.

Vues et glyphes du débogueur

Les vues du débogueur vous permettent de regarder à l'intérieur de votre programme pour voir ce qui s'y passe. Vous utilisez les vues du débogueur pour examiner et changer les valeurs des données, exécuter votre programme pas à pas en avant et en arrière, étudier le processus interne d'une méthode et l'appel à cette méthode, et suivre un thread individuel dans votre programme.

Les vues du débogueur s'affichent en bas de l'AppBrowser dans le volet message. Pour sélectionner une vue, choisissez son onglet sur le côté gauche du débogueur. Les vues (sauf la vue Console d'entrée/sortie et d'erreurs) peuvent être affichées sous forme de fenêtres flottantes. Les fenêtres flottantes vous permettent de voir plusieurs vues du débogueur à la fois, au lieu d'être obligé de passer sans arrêt de l'une à l'autre. (Les fenêtres flottantes sont des fonctionnalités de JBuilder Professionnel et Entreprise.)

Choisissez ci-dessous une vue du débogueur pour avoir plus d'informations :

  Vue Console d'entrée/sortie et d'erreurs

La vue Console d'entrée/sortie et d'erreurs affiche les sorties provenant du programme ainsi que les erreurs du programme. Elle vous permet également de saisir toute entrée requise par le programme. L'image de l'icône change dès qu'un résultat ou qu'un message d'erreur s'affiche. Les exceptions d'exécution s'affichent dans cette vue.

Glyphe Description
Des messages de sortie ont été écrits dans la vue
Des messages d'erreur ont été écrits dans la vue
Aucune sortie n'a été écrite dans la vue

 Vue Threads, piles d'appels et données

La vue Threads, piles d'appels et données affiche le statut actuel des groupes de threads de votre programme. Chaque groupe de threads se développe pour montrer ses threads et contient la trace du cadre de pile représentant la séquence d'appels en cours. Chaque cadre de pile peut se développer pour montrer les données disponibles se trouvant dans la portée. Les glyphes indiquent visuellement le type de l'élément donnée. Les données statiques ne sont pas affichées par cette vue, elles sont affichées par la vue Classes et données statiques chargées.

Par défaut, cette vue est divisée en deux volets. La partie gauche de la vue peut être développée pour montrer les cadres de pile. La partie droite affiche le contenu de l'élément sélectionné à gauche, et peut donc montrer n'importe quoi, d'un groupe de thread à une variable. Par exemple, si un thread est sélectionné dans la partie gauche, la partie droite de la vue montrera les cadres de pile de ce thread. Si c'est un cadre de pile qui est sélectionné dans la partie gauche, la partie droite de la vue montrera les variables disponibles dans cette vue. (Fonctionnalité de JBuilder Professionnel et Entreprise.)

Glyphe Description
Le thread en cours d'exécution pas à pas (ou tracé)
Un groupe de threads
Un thread bloqué
Un thread interrompu
Un thread mort
Une classe
Une interface
Un objet
Un objet nul
Un appel de méthode
Un tableau
Une primitive
Une erreur
Un message d'information

Vue Moniteurs de synchronisation

C'est une fonctionnalité de JBuilder Entreprise.

La vue Moniteurs de synchronisation montre la synchronisation des moniteurs utilisés par les threads et leur état, elle sert à détecter les situations de verrou mortel.

Glyphe Description
Le moniteur de synchronisation utilisé par le thread spécifié n'est pas verrouillé
Le moniteur de synchronisation utilisé par le thread spécifié est verrouillé

 Vue Suivis de données

Cette vue affiche les valeurs en cours des membres données que vous souhaitez suivre. Vous pouvez développer certains types d'expressions de suivi montrer les éléments de données disponibles qui sont dans sa portée. Les éléments grisés sont des éléments hérités.

Glyphe Description
Une classe
Une interface
Un objet
Un objet nul
Un tableau
Une primitive
Une erreur
Un message d'information

 Vue Classes et données statiques chargées

La vue Classes et données statiques chargées affiche les classes chargées par le programme. Développer une classe montre les données statiques, s'il y en a, pour cette classe. Si un paquet est affiché dans l'arborescence, le nombre des classes chargées est affiché.

Glyphe Description
Un paquet
Une classe
Une interface
Une classe verrouillée
Un objet
Un objet nul
Un tableau
Une primitive

  Vue Points d'arrêt de données et de code

Les vues Points d'arrêt de données et de code montrent tous les points d'arrêt définis dans le fichier et leur état en cours. Ces informations sont accessibles avant le début du débogage au moyen de la commande Exécuter|Points d'arrêt.

Glyphe Description
Un point d'arrêt non vérifié
Un point d'arrêt vérifié
Un point d'arrêt non valide
Un point d'arrêt désactivé
Un point d'arrêt champ
Un point d'arrêt qui a été désactivé pour un processus particulier

  Vue Classes avec tracé désactivé

Fonctionnalité de JBuilder Professionnel et Entreprise.

La vue Classes avec tracé désactivé affiche par ordre alphabétique la liste des classes et des paquets que vous ne voulez pas exécuter pas à pas. Cette information est disponible avant que vous ne commenciez le débogage à partir de la commande Exécuter|Voir les classes avec tracé désactivé.

Par défaut, lorsque vous démarrez une session de débogage, le pas à pas dans toutes les classes affichées est désactivé. Ceci empêche le débogueur d'effectuer un suivi dans les bibliothèques fournies avec JBuilder, en vous permettant de vous concentrer sur votre code plutôt que sur du code qui a déjà été débogué.

Glyphe Description
Le tracé est désactivé pour la classe ou le paquet sélectionné
Le tracé est activé pour la classe ou le paquet sélectionné

Barre d'outils du débogueur

La barre d'outils en bas du débogueur propose les icônes pour arrêter, redémarrer/reprendre et suspendre le programme, l'icône Pas à pas intelligent, les icônes d'exécution pas à pas, les icônes Ajouter un point d'arrêt, Ajouter un point de suivi et Afficher le cadre en cours. La barre d'outils affiche également les messages d'état.

Le tableau ci-dessous explique les icônes de la barre d'outils :

Icône Action Description
Réinitialiser le programme Termine l'exécution de l'application en cours et libère la mémoire. Equivalent à Exécuter|Réinitialiser le programme.
 /  Redémarrer/Reprendre le programme Continue la session de débogage en cours ou en relance une qui est terminée ou a été réinitialisée. Equivalent à Exécuter|Reprendre le programme.
Suspendre le programme Suspend la session de débogage en cours. Equivalent à Exécuter|Suspendre le programme.
Pas à pas intelligent Contrôle l'utilisation des options de Pas à pas intelligent dans la vue Classes avec tracé désactivé et les options de Pas à pas intelligent dans la page Débogage de la boîte de dialogue Propriétés du projet. Le pas à pas intelligent est une fonctionnalité de JBuilder Professionnel et Entreprise.
Pas à pas Exécute pas à pas la ligne de code en cours. Equivalent à Exécuter|Pas à pas.
Pas à pas approfondi Exécute en pas à pas approfondi la ligne de code en cours. Equivalent à Exécuter|Pas à pas approfondi.
Sortir d'ici Sort de la méthode en cours et retourne à l'instruction qui l'a appelée. Equivalent à Exécuter|Sortir d'ici.
Ajouter un point d'arrêt Ajoute un point d'arrêt à la session de débogage en cours. Cliquez sur la flèche descendante, à droite de l'icône, pour choisir le type de point d'arrêt. Equivalent à Exécuter|Ajouter un point d'arrêt.
Ajouter un point de suivi Ajoute un point de suivi à la session de débogage en cours. Equivalent à Exécuter|Ajouter un point de suivi.
Afficher le cadre en cours Affiche la pile d'appels du thread en cours.

Touches de raccourcis du débogueur

Vous pouvez utiliser les touches de raccourci suivantes pour accéder plus facilement aux fonctions du débogueur :

Touches Action
Maj+F9 Déboguer le projet
Ctrl+F2 Réinitialiser le programme
F4 Exécuter jusqu'au curseur
F5 Basculer le point d'arrêt dans l'éditeur
F7 Pas à pas approfondi
F8 Pas à pas
F9 Reprendre le programme (continuer la session de débogage en cours)

Voir aussi :
Construction d'applications avec JBuilder : Présentation du débogage
Construction d'applications avec JBuilder : Contrôle de l'exécution du programme
Construction d'applications avec JBuilder : Utilisation des points d'arrêt
Construction d'applications avec JBuilder : Examen des valeurs des données des programmes