Eclipse hört nicht an Haltepunkten auf

74

Eclipse 3.5.2 stoppt nicht an Haltepunkten. Es ist, als ob der Debugger eine ältere Version der Quelldatei verwendet.

Versuchte die übliche Aktualisierung, bereinigte alle Projekte, baute alle ohne Änderung.

Bereits im Debug-Modus und der Haltepunkt wird überprüft.

* ok löschte schließlich das gesamte Projekt und checkte es erneut aus. aber immer noch neugierig, was das Problem war.

Ayrad
quelle
2
Hast du alles gereinigt, bevor du alles gebaut hast?
Yusuf K.
2
Ja, alle Projekte bereinigt und automatisch erstellt wird auf Ein gesetzt (Frage wird aktualisiert). Ich werde einen Neustart versuchen, der PC ist wirklich funky gelaufen.
Ayrad
Aktualisieren Sie zuerst auf Eclipse 3.6 und CDT 7. Übrigens ist die Version 3.5.2 oder Galileo die Plattformversion, nicht die C / C ++ - IDE-Version.
Kos
Führen Sie Ihre App über Eclipse aus? Wenn nicht, verwenden Sie Remote-Debugging. Wahrscheinlich stimmt der Quellcode in Eclipse nicht mit dem laufenden Binärcode überein.
Kane
@ Kane Die App läuft auf einem Tomcat-Server. Wie stellen Sie sicher, dass die Quelle mit dem laufenden Binärcode übereinstimmt, außer dass alle sauber usw. erstellt wurden?
Ayrad

Antworten:

134

Vielleicht haben Sie die geschoben überspringt alle Haltepunkte - Schaltfläche in den Haltepunkten Ansicht.

Fabian Steeg
quelle
5
Die Taste wird nicht gedrückt. Es verhält sich nur seltsam,
wenn man
Meinst du Remove all Breakpoints? Ich habe keinen Clear breakpointKnopf gesehen.
Thupten
1
Ich weiß, dass dies eine alte Antwort ist, aber sie ist immer noch nützlich! Du hast mich gerettet! Haltepunkte funktionierten und hörten dann auf zu arbeiten. Dies war der Grund, obwohl ich schwöre, dass ich nie auf diese Schaltfläche geklickt habe ... Ich verwende die aktuelle (ab sofort) Eclipse Luna 4.4.0 mit der aktuellen CDT.
Bitsmack
1
@ Dc01_xx danke für den Kommentar "Alle Haltepunkte löschen" .. Das war das Problem für mich. Ich habe alles andere versucht, konnte aber Eclipse Juno nicht dazu bringen, an Haltepunkten in meiner j2ee-Anwendung anzuhalten. Fügen Sie es als Antwort hinzu, damit es für Personen, die mit diesem Problem konfrontiert sind, leicht sichtbar ist. ?
Raj
Es scheint, dass "Alle Haltepunkte überspringen" bei der ersten Installation von Eclipse standardmäßig aktiviert war. Ich habe es sicher nicht überprüft.
Don Smith
23

Danke Jungs, das hat mir auch den Tag gerettet. Ich habe zuvor auf Überspring-Haltepunkte gedrückt. Wenn Sie dasselbe getan haben, wird der Haltepunkt mit einem Backslash-Symbol angezeigt.

Um es wieder normal zu machen:

  1. Wechseln Sie zur Debug-Perspektive.
  2. Drücken Sie auf die Haltepunktansicht. Tippen Sie auf - >> obere rechte Ecke des Bildschirms. Sie können auch über Fenster-> Ansicht anzeigen-> Haltepunkte dorthin gelangen.
  3. 5. Symbol von links Sie sehen Haltepunkt mit Backslash. drücke darauf.

Versuchen Sie zur Bestätigung, einen Haltepunkt auf eine beliebige Linie zu setzen. Dieser sollte normal angezeigt werden.

Kareem
quelle
5
<CTRL> + <ALT> + B schaltet diesen Modus um, ohne das Fenster finden zu müssen usw. Ich habe mir das auch irgendwie versehentlich
angetan
18

Drücken Sie Strg + Alt + B.

ODER gehen Sie die folgenden Schritte durch

Geben Sie hier die Bildbeschreibung ein

ChandraBhan Singh
quelle
9

Manchmal starten Sie den Debug-Modus, aber der Debugger wird nicht wirklich angehängt / getrennt. Ich hatte dieses Problem auch einige Male, als mein Laptop sehr langsam reagierte. Ein Neustart hat es immer für mich gelöst.

Versuchen Sie auch, alles sauber zu machen (wirkt Wunder in Eclipse).

Jack
quelle
Wie macht man alles sauber? Alles was reinigen?
TimStaley
@TimS Wählen Sie im Menü "Projekt" die Option "Bereinigen" und dann "Alle Projekte bereinigen".
Shahar
7

Durch das Löschen aller Haltepunkte wurde das Problem behoben (aus Sicht des Debuggers :) Window -> Remove All Breakpoints.

Entfernen Sie alle Haltepunkte

Der Wiederaufbau des Projekts hat bei mir nicht funktioniert.

Richard
quelle
6

Bitte deaktivieren Sie dies im Eclipse-Menü.

Ausführen-> Alle Haltepunkte überspringen.

Ich denke, dies wird dauerhaft aktiviert, sobald Sie die Option Alle Haltepunkte entfernen im Fenster Debug / Haltepunkte auswählen.

Kanaparthikiran
quelle
5

Das Durchführen eines "Clean All" hat bei mir funktioniert.

Klicken Sie auf die Registerkarte "Projekt" -> Menüpunkt "Reinigen".

Wählen Sie im Dialogfeld "Bereinigen" das Optionsfeld "Alle Projekte bereinigen". Belassen Sie die restlichen Werte als Standard. Klicken Sie auf "OK".

BINGO !!! Das Remote-Debugging begann für mich so schön wie zuvor zu funktionieren.

Arry
quelle
4

Es ist mir auch passiert, in meinem Fall war es der GDB-Launcher, den ich an "Legacy Create Process Launcher" wenden musste. Um dies zu tun,

  • Ändern Sie entweder die Standardstarter in "Legacy Create Process Launcher" unter Windows> Einstellungen> Ausführen / Debuggen> Starten> Standardstarter.

  • oder wählen Sie diesen Launcher in der Debug-Konfiguration Ihrer Anwendung (Ausführen> Debug-Konfigurationen> Wählen Sie Ihre Debug-Konfiguration). Klicken Sie unten auf der Registerkarte "Haupt" auf "Andere auswählen ...", aktivieren Sie das Kontrollkästchen "Konfigurationsspezifische Einstellungen verwenden" und wählen Sie "Legacy Create Process Launcher".

FlorianT
quelle
Vielen Dank Florian, das hat mich gerettet. Ich kämpfe jetzt seit fast 2 Tagen dagegen. Es hat das Problem gelöst, aber ich frage mich, warum SDF GDB nicht richtig funktioniert. Vielen Dank.
Ransh
Wie ich in meiner Antwort stackoverflow.com/a/28631658/2937955 sage , wurde das Problem mit SDF GDB in meinem Fall dadurch verursacht, dass GDB den Quellensuchpfad nicht richtig verstand und daher die Haltepunkte ignorierte.
FlorianT
3

Ich hatte einen bedingten Haltepunkt falsch auf den Methodeneintrittspunkt gesetzt. Dieser Haltepunkt wurde entfernt und es hat funktioniert.

Hinweis: Versucht, alle Haltepunkte zu überspringen, alle Projekte zu bereinigen, zu aktualisieren, Eclipse ohne Glück zu schließen, bevor Sie es nageln.

ankitkpd
quelle
hatte ein ähnliches Problem - es sieht so aus, als ob ein festsitzender Haltepunkt irgendwo verhindern kann, dass Eclipse überhaupt einen funktionierenden Haltepunkt hat. Selbst ein Neustart hat nicht geholfen - aber das Entfernen aller Haltepunkte hat funktioniert.
Dr. Azrael Tod
2

Ich hatte alle Haltepunkte aktiviert und konfiguriert, wie ich sollte. Aber wenn ich auf "Debuggen" klickte, ging es nur durch das Programm (drücken Sie f5 / f6). Es stellte sich heraus, dass es eine Schurkeneinstellung gab

Klicken Sie mit der rechten Maustaste auf Projekt> Debug-Konfigurationen> Registerkarte "Debugger"> deaktivieren Sie das Kontrollkästchen "Beim Start stoppen bei:"

Andrew
quelle
Ich hatte ein ähnliches Problem: Alle Haltepunkte in main funktionierten nicht mehr, da Eclipse beim Eintritt in main einen temporären Haltepunkt festlegte. Das Deaktivieren von "Beim Start stoppen" hat das Problem behoben!
Hertz
2

Ein Grund für diese Situation kann sein, dass Sie bei der Wiedergabe auf "Alle Haltepunkte überspringen" gedrückt haben und andere Bilder kleiner sind als normalerweise (aufgrund des Bildschirms mit höherer Auflösung). Eine andere Sache kann sein, dass Haltepunkte nur unter VM-Threads gestoppt werden, nicht unter normalen Threads!

Tuomas
quelle
2
  1. Gehen Sie zu (eclipse-workspace)\.metadata\.plugins\org.eclipse.wst.server.coreund löschen Sie alle tmp-Ordner.
  2. Server bereinigen und neu starten.
Philip Rego
quelle
1

In Eclipse Juno CDT habe ich plötzlich auch das Überspringen von Haltepunkten erlebt. Für mich war das Problem, dass ich Optimierungsstufen eingerichtet hatte. Sobald ich es wieder auf Null gesetzt hatte, funktionierte es einwandfrei. Um die Optimierungsstufen festzulegen, gehen Sie zu Projekteigenschaften -> C / C ++ - Erstellen -> Einstellungen -> Werkzeugeinstellungen, je nachdem, welchen Compiler Sie verwenden. Gehen Sie zu -> Optimierung und setzen Sie die Optimierungsstufe auf: Keine (-O0). Hoffe das hilft! Beste

gomfy
quelle
1

Ich hatte das gleiche Problem und fand die wahre Ursache.

Ich hatte gleichzeitig Code für mehrere Threads geschrieben , während ich einige Haltepunkte in den Code eingefügt habe, der in einem neuen Thread ausgeführt wird. Wenn JUnit-Tests übergelaufen sind und bald gestoppt werden, erreicht und stoppt der Code die Haltepunkte nicht mehr.

In dieser Situation müssen wir auf das Kontrollkästchen " JUnit nach einem Testlauf beim Debuggen ausführen " klicken und das Kontrollkästchen " Konfigurationen debuggen ... " aktivieren.

zengsn
quelle
1

Haltepunkte scheinen bei den Versionen von Eclipse, die ich in den letzten Jahren verwendet habe, zu funktionieren und nicht zu funktionieren. Momentan verwende ich Juno und habe gerade festgestellt, dass Haltepunkte nicht mehr funktionieren. Die obigen Lösungen haben in meinem Fall nicht funktioniert, obwohl sie gut waren.

Folgendes hat in meinem Fall funktioniert:

  1. Projekt gelöscht

  2. schau es dir von svn wieder an

  3. Importieren Sie es erneut in Eclipse

  4. Führen Sie "mvn eclipse: eclipse" aus.

Da das Projekt auch ein Groovy / Http-Bulder / Junit-Test-Projekt ist, musste ich:

  1. Konvertieren Sie das Projekt von Java nach Groovy

  2. füge / src / test / groovy zum Java-Erstellungspfad hinzu (Quellordner im Erstellungspfad)

  3. Fügen Sie "** / *. groovy" in den Java-Erstellungspfad für / src / test / groovy ein

Robert
quelle
1

Das Wechseln des Arbeitsbereichs hat bei mir funktioniert. Gehen Sie zu Datei> Arbeitsbereich wechseln und wählen Sie einen anderen Ordner (Arbeitsbereich). Das war's und BINGO! Das Debuggen begann für mich so schön wie zuvor zu arbeiten.

Ausnahme
quelle
1

Gehen Sie zum Breatpoint und klicken Sie auf 5., um Eclipse-> Fenster> -> Ansicht anzeigen-> Andere-> Debug-> Haltepunkt anzuzeigen, und klicken Sie auf 5. Option (Alle Haltepunkte überspringen)

Manoj Mishra
quelle
1

Stellen Sie sicher, dass Sie die richtige JRE-Version zum Debuggen Ihres Projekts verwenden. Vor allem, wenn es sich um ein Drittanbieterprojekt handelt.

Stellen Sie außerdem sicher, dass für keinen Haltepunkt ein Triggerpunkt festgelegt ist.

lauxjpn
quelle
0

Ich hatte das gleiche Problem, als ich Eclipse Juno verwendete. Ich habe Eclipse Indigo installiert und es funktioniert einwandfrei. Versuchen Sie, Eclipse neu zu installieren.

kod
quelle
0

Eine andere Lösung hat bei mir funktioniert. Ich hatte auch das gleiche Problem: Debugpunkte wurden nicht aktualisiert, obwohl sie im IDE-Editor und auf der Registerkarte Haltepunkte korrekt angezeigt werden.

Mein Problem und meine Lösung sind: Während der Erstellung des Projekts zeigt der 'Standardausgabeordner' auf einen anderen Speicherort. Zu einem späteren Zeitpunkt habe ich das Projekt mavenisiert und "Projekt-Rechtsklick - Konfigurieren - In Maven-Projekt konvertieren" ausgewählt. Es gibt also zwei Sätze von Ausgabeordnern in meinem Projektdateisystem. Das mehrmalige Reinigen des Projekts hat mein Problem nicht gelöst. Im Hintergrund zeigte es auf verschiedene Binärdateien. Als ich schließlich das Maven-Feature entfernte und das Projekt bereinigte, funktionierte diesmal alles einwandfrei. Env: Eclipse Juno und JRE ist J2SDK 1.5.

Pavan
quelle
0

Bei Verwendung von -O2 in den Compiler-Flags werden alle Haltepunkte übersprungen und als Warnungen markiert. In meinem Makefile auf -O0 -g umgeschaltet, funktionieren jetzt Haltepunkte. Hoffe das hilft.

wgodoy
quelle
0

Wenn es auch nach dem Deaktivieren nicht aufhört SKIP ALL BREAKPOINTS, können Sie dies android.os.debug.waitfordebuggerkurz vor Ihrem Haltepunkt hinzufügen .

Wenn Sie dies tun, wartet Ihre App auf jeden Fall jedes Mal auf den Debugger, selbst wenn Sie nur Ihre App ausführen, die sie nur findet, wenn Ihr Gerät mit Eclipse verbunden ist.

Nach dem Debuggen müssen Sie diese Zeile entfernen, damit die App ordnungsgemäß ausgeführt wird. Andernfalls wartet Android einfach weiter auf den Debugger.

user3215142
quelle
0

Versuchen Sie, Eclipse neu zu starten, das funktioniert manchmal. Ich denke, da gibt es eine Art Cache.

Eric Wang
quelle
0

In meinem Fall war der debuggte Code in JBoss älter als der Code im Eclipse-Projekt. Der Wiederaufbau der .war löste das Problem.

weberjn
quelle
0

Gleiches Problem mit Eclipse Luna. Projekt sauber hat nicht funktioniert. Der Wiederaufbau hat nicht funktioniert.

Damit funktioniert es, dass die App vor jedem Debugging auf dem Gerät deinstalliert wird.

desm0nds
quelle
0

Ich verwende das Eclipse FileSync-Plugin für das Live-Remote-Debugging. Stellen Sie sicher, dass Sie Allow different target foldersdie Target folderDateieinstellung in der Baumansicht ankreuzen und bearbeiten .

Einstellen der Default target folderdurch die Browse...Taste ohne Allow different target foldersalle Ordner auf das gleiche Ziel gesetzt (ich hatte beide libs& classesSet mit dem Standard für libsso meine Haltepunkte nicht aktualisiert).

Stuart Cardall
quelle
0

Mein Problem war, dass meine Debug-Ansicht geschlossen war und wenn ich versuchte, einen Haltepunkt zu erreichen, frierte Eclipse einfach ein und gab mir keinen Hinweis darauf, wo es aufgehört hatte.

Sie können die Debug-Ansicht auf dem Mac anzeigen, indem Sie auf Fenster> Ansicht anzeigen> Debuggen klicken

David Hudman
quelle
0

Seit der Veröffentlichung von Eclipse 4.7 / Oxygen im Juni 2017 gibt es ein neues Konzept für "Trigger für Haltepunkte", das als kleines "T" neben dem Symbol "Blaue Kugel" des Haltepunkts angezeigt wird.

Alle anderen Haltepunkte, die anfänglich durch Trigger unterdrückt werden, werden erst getroffen, nachdem einer der Triggerpunkte getroffen wurde. Alle Trigger werden deaktiviert, nachdem ein Triggerpunkt getroffen wurde, und werden nach dem Lauf wieder aktiviert.

Um alle "Trigger" -Flaggen zurückzusetzen, müssen Sie die folgenden Schritte ausführen:

  1. Wechseln Sie zur Debug-Perspektive.
  2. Klicken Sie mit der rechten Maustaste in die Ansicht "Haltepunkte"
  3. Wählen Sie "Alle Trigger entfernen".

Hinweis: In diesem Schritt werden nicht alle Haltepunkte gelöscht. Dies tritt auf, wenn Sie "Alle entfernen" im selben Kontextmenü auswählen.

Hinweis: Die Tastenkombination zum Aktivieren der Trigger lautet "Alt-R". Sie hat Vorrang vor der Tastenkombination zum Öffnen des Menüs "Ausführen" mit seinen Mnemoniken, wenn die Ansicht "Haltepunkte" ausgewählt ist.

metatechbe
quelle
0

Bei mir hat das Aktualisieren der gradle-wrapper.jarDatei funktioniert.

Staubmüll
quelle
0

In meinem Fall musste ich eine Option in der aktivieren und dann deaktivieren Preferences. Ich bevorzuge es nicht debug view, weiter zu springen, wenn ein Haltepunkt erreicht wird, also habe ich diese Option deaktiviert, aber das fragliche Problem verursacht.

Die Lösung bestand darin, es erneut zu aktivieren, eine Debug-Sitzung zu starten, den Haltepunkt zu erreichen und in der Benutzeroberfläche anzuzeigen, und dann die Option erneut zu deaktivieren.

Sieht aus wie ein Fehler in Eclipse 4.17

Geben Sie hier die Bildbeschreibung ein

AKTUALISIEREN

Es gibt auch eine andere einfachere Möglichkeit, mit der Eclipse das Debugging-Highlight am Haltepunkt anzeigt oder die Debugging-Benutzeroberfläche so aktualisiert, dass sie ordnungsgemäß funktioniert. Nachdem der Haltepunkt erreicht ist, werden Sie von Eclipse aufgefordert, in den Debugging-Modus zu wechseln, falls Sie noch nicht in diesem Modus sind. Klicken Sie auf die Schaltfläche zum Umschalten und aktivieren debugSie dann die Registerkarte / Ansicht. Sie werden feststellen, dass die Schrittschaltflächen aktiviert sind und die Haltepunktlinie hervorgehoben ist.

IdontCareAboutReputationPoints
quelle