web-dev-qa-db-fra.com

Que signifient les différentes icônes de point d'arrêt dans Eclipse?

Lorsque je travaille avec des points d'arrêt dans Eclipse, je remarque parfois qu'ils ont différentes icônes/annotations (marqueurs sur la barre latérale gauche). Parfois, c'est juste une boule bleue, parfois elle est cochée et parfois elle est barrée. Que signifient toutes ces annotations?

76
Fixpoint
  • balle bleue: point d'arrêt régulier, actif (éventuellement avec un nombre de coups défini)
  • balle vide (c'est-à-dire blanche): le point d'arrêt a été désactivé (supprimer la coche dans la vue du point d'arrêt, ou disable dans le menu contextuel)
  • ligne diagonale passant par le point d'arrêt: tous les points d'arrêt ont été désactivés (bouton skip all breakpoints en vue point d'arrêt)
  • point d'interrogation à côté du point d'arrêt: une condition est active pour ce point d'arrêt (regardez sous les propriétés du point d'arrêt)
136
sleske

La coche signifie que le point d'arrêt a été correctement défini. Je pense que cela peut apparaître uniquement lorsque vous effectuez un débogage à distance; lorsque vous ajoutez un point d'arrêt, il commence comme une simple boule, mais une fois que l'agent JPDA du système distant en a été informé et a confirmé qu'il est défini, il obtient une coche.

17
Tom Anderson

J'ai créé un exemple de code avec explication en ligne.

public class Breakpoints {
    int field1; // watchpoint - suspend when field1 is read
    int field2; // watchpoint - suspend when field1 is written
    int field3; // watchpoint - suspend when field1 is read or written

    public void method() {
        int x;
        x = 10; // suspend before this line is executed 
        x = 11; // same as above but this breakpoint is temporarily disabled
        for (int i = 0; i < 100; i++) {
            x = i; // conditional breakpoint - suspend when i==5
        }
    }
}

Eclipse breakpoint icons

Une fois que vous avez sélectionné Skip All Breakpoints dans la vue Points d'arrêt (Window | Show Viev | Debug | Breakpoints), toutes les icônes sont frappées en diagonale comme ceci:

Eclipse breakpoint icons Skip All

9
Honza Zidek

Ajout aux réponses précédentes. L'icône petite blanche c sur une boule verte signifie que le point d'arrêt est au niveau de la classe .

Class Load Breakpoint

Aide Eclipse

5
Ali Khan

Je pense que la réponse donnée par @sleske explique tout, sauf:

Blue Ball with Tick: Le point d'arrêt est correctement défini car votre code source correspond au code d'octet et le contrôle de débogage y parviendra.

Only Blue Ball: Le code source diffère du code Byte (vous exécutez peut-être un ancien instantané de code). Le contrôle n'atteindra jamais ce point d'arrêt. Vous devrez mettre à jour vos fichiers JAR pour contrôler ces points d'arrêt.

4
rdj7