68 Stimmen

Eclipse liest stdin (System.in) aus einer Datei

Ist es möglich, dass Eclipse stdin aus einer Datei liest?

1 Stimmen

Immer noch nicht in 3.5.2 für die Eingabe. Wird dies als Eclipse-Fehler gemeldet?

1 Stimmen

5voto

Stewart Stevens Punkte 51

Die Lösung für mich (auf einem Mac, mit Eclipse CDT für eine C-Anwendung) bestand darin, "< path/to/somefile" am Ende anderer Argumente auf der Registerkarte "Argumente" des Dialogfelds "Run Configuration" hinzuzufügen.

Prüfen Sie auch dies andere Frage für eine Antwort, bei der ein Java-Programm in einem angehaltenen Zustand gestartet und dann der Debugger mit Eclipse angehängt wird.

1 Stimmen

Dies funktioniert auch unter Linux mit CDT 7.0. Wahrscheinlich funktioniert es auch mit älteren Versionen.

0 Stimmen

Dies funktioniert nicht auf Linux mit Eclipse Java EE Indigo SR 1 :(

4voto

KC Baltz Punkte 1429

Ich sehe keine gute Möglichkeit, dies mit dem Standard-Dialogfeld von Eclipse zu tun. Möglicherweise können Sie es jedoch mit einem externen Tool Launcher tun und entweder die Standardsyntax "< infile" verwenden oder ein .bat/.sh-Skript aufrufen, um es für Sie zu tun.

Es ist nicht automatisiert, was ich vermute, was Sie wollen, aber Sie können den Inhalt Ihrer Infile in die Eclipse-Konsole kopieren und einfügen, wenn Sie Ihr Programm starten.

4voto

Vlad Punkte 727
< ${workspace_loc:/MyProject/file}

in Debug-Konfiguration/Argumente/Programmargumente:

funktioniert gut für mich.

0 Stimmen

Eine faszinierende Möglichkeit. Ich bin neugierig, welche Version von Eclipse Sie verwenden, und auf welchem System. Ich habe dies mit Eclipse Juno unter Mac OS X 10.8 ausprobiert, und der Umleitungsoperator < wird wörtlich als Befehlszeilenargument interpretiert.

0 Stimmen

Eclipse IDE für Java-Entwickler, Version: Juno Release, Build id: 20120614-1722 unter Mac OS X 10.7.5 hier, und das funktioniert bei mir NICHT :(

0 Stimmen

Funktioniert auch bei mir nicht mit Juno Service Release 2 unter Windows 7 x64

2voto

Für Linux: Ich denke, der einfachste Weg ist, ein sh-Skript zu schreiben.

1) Schreiben Sie run.sh wie folgt:

Ihr Programm mit Parametern < input.txt

2) In der Eclipse-Profilkonfiguration geben Sie an

[Registerkarte Main] C++ Anwendung ausführen = /bin/sh

[tab Argumente] Programm Argumente = run.sh

Das war's. Wenn Sie Ihr Projekt ausführen, sehen Sie die Ausgabe des Skripts in der Eclipse-Konsole. Unter Windows können Sie etwas Ähnliches tun.

1voto

studgeek Punkte 13264

Überraschenderweise wird dies in Eclipse nicht unterstützt, und es scheint keine Pläne zu geben, dies hinzuzufügen. Siehe https://bugs.eclipse.org/bugs/show_bug.cgi?id=155411 zu folgen und abzustimmen.

Ich werde hier aktualisieren, wenn sie es einführen.

0 Stimmen

Ich weiß nicht, wie ich zu Eclipse beitragen kann, aber dieser Fehler ist so ärgerlich, dass ich den Code so weit studieren würde, dass ich selbst ein Feld für die Standardausgabe hinzufügen würde. Das einzige Problem ist, dass ich es für Code verwenden muss, der morgen fällig ist, also habe ich keine Zeit. Trotzdem steht es auf meiner Agenda für mein nächstes ernsthaftes Programmierprojekt - es sei denn, jemand anderes macht es zuerst. (Betrachten Sie dies als Herausforderung an andere Entwickler, mir zuvorzukommen).

0 Stimmen

@studgeek ich vermute, dass der Fehler verifiziert und behoben ist und die Funktion in der nächsten Version hinzugefügt werden soll: Mars (4.5) Build id: I20141208-2000. Liege ich richtig?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X