Senden Sie ein EOF in der Debugger-Konsole von Eclipse

Lesezeit: 2 Minuten

Ich habe ein Programm, das Konsoleneingaben entgegennimmt, die ich zu debuggen versuche. Das Senden eines EOF (Strg+D in der Shell) ist wichtig für seine Funktion; aber Strg+D sendet keine in der Debugger-Konsole von Eclipse.

Das sollte super einfach sein, aber Google (und meine begrenzte Erfahrung) ergibt nichts. Vielen Dank für jede Hilfe!

  • Welches Betriebssystem? Welche Eclipse-Version?

    – Mattball

    31. März 2011 um 3:19 Uhr


  • Meine Güte, Ubuntu 10.10, Eclipse 3.5.2

    – Karl Offenbacher

    31. März 2011 um 3:23 Uhr

  • mögliches Duplikat des Zeichens Passing End of Transmission (Strg + D) in der Eclipse CDT-Konsole

    – Mattball

    31. März 2011 um 3:28 Uhr

  • Ja ist es. Ich werde versuchen herauszufinden, wie ich dies als Duplikat schließen kann.

    – Karl Offenbacher

    31. März 2011 um 3:30 Uhr

  • Passiert immer noch in OpenSUSE 12 & Eclipse CDT Luna 4.4.1.

    – Fernando González Sánchez

    29. Dezember 2014 um 22:21 Uhr

Ich habe gerade eine Lösung für dieses Problem gefunden:

Wenn Sie mit der Eingabe Ihrer Eingaben in der Konsole fertig sind, klicken Sie auf ein anderes Fenster (Editor, Projekt-Explorer usw.) und dann wieder auf die Konsole. Schlagen Strg + Z wird jetzt funktionieren.

Benutzer-Avatar
Matt

Das ist ein Bug, siehe hier:

Übergeben des Zeichens für das Ende der Übertragung (Strg + D) in der Eclipse CDT-Konsole

Ich denke, es war ein Fehler vor etwa 2 3 Jahren (reagiert nicht auf Strg + D auf Unix / Linux-Systemen und reagiert nicht auf Strg + Z auf DOS? Windows-Systemen). Eclipse-Mailinglisten oder die Fehlerdatenbank sollten bessere Informationen darüber enthalten. Verweisen hier für weitere Informationen zum Fehlerbericht.

  • Exakt. Es handelt sich um einen plattformübergreifenden Fehler in Bezug auf das End Of File-Zeichen, das Strg+D auf Unix/Linux-Systemen und Strg+Z auf DOS zugeordnet ist.

    – Mohamed El-Nakeep

    9. März 2015 um 15:05 Uhr

Versuchen Sie auf Mac für C++-Projekte, diese Funktion zu deaktivieren: Gehen Sie zu Ausführen -> Konfigurationen ausführen … Deaktivieren Sie Prozesseingabe und -ausgabe mit einem Terminal verbinden. Es hat für mich funktioniert.

Aus irgendeinem Grund funktioniert der Trick, etwas anderes zu fokussieren und dann die Konsole neu zu fokussieren, nur in der “normalen” Perspektive und nicht in der Debugging-Perspektive für mich.

Eine andere Problemumgehung besteht darin, eine externe Konsole zu verwenden. Dies kann hier konfiguriert werden:

  • Drücken Sie Run im oberen Menü
  • Wählen Debug Konfigurationen
  • Gehen Sie zum Debugger Tab
  • Prüfen Use external console for inferior (open a new console window for input/output)

Geben Sie hier die Bildbeschreibung ein

Funktioniert für mich sowohl für die normale Perspektive als auch für die Debugging-Perspektive.

1199850cookie-checkSenden Sie ein EOF in der Debugger-Konsole von Eclipse

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy