Aufrufen der Java-Hauptmethode mit Parametern aus Eclipse
Während der Entwicklung (und für debugging) es ist sehr nützlich zum ausführen einer Java-Klasse' public static void main(String[] argv) Methode direkt innerhalb von Eclipse (Ausführen Als Kontext-Menü).
Gibt es einen ähnlich schnellen Weg, um geben Sie Befehl Linie Parameter für den Lauf?
Was ich jetzt Tue, ist zu gehen, um den "Ausführen-Dialog", klicken Sie durch die verschiedenen Einstellungen auf der Registerkarte wo kann ich angeben, VM-und Programm-Argumente und tragen Sie diese dort.
Zu viele Schritte, und ich will nicht zu mischen, die mehr ständige Laufzeit-Konfigurationseinstellungen mit dem einmaligen Aufruf-Parameter.
Was ich stattdessen möchte, ist zu überprüfen, eine box irgendwo (oder über einen separaten Menüpunkt "Run as-Java-Anwendung mit Kommandozeilen -") und dann werden aufgefordert, die Kommandozeile zu jeder Zeit (mit einer netten Geschichte).
InformationsquelleAutor der Frage Thilo | 2008-12-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Antwort basiert auf Eclipse 3.4, aber sollte funktionieren in älteren Versionen von Eclipse.
Bei der Auswahl von " Ausführen Als...", wechseln Sie in den run configurations.
Auf die Argumente, die Registerkarte der Ihre Java-Konfiguration auszuführen, konfigurieren Sie die variable ${string_prompt} angezeigt werden (klicken Sie auf Variablen, um es zu bekommen, oder kopieren, um es direkt).
Jedes mal, wenn Sie verwenden, die run-configuration ein (nennen Sie es auch so haben Sie es später), werden Sie aufgefordert, den Befehl Linie Argumente.
InformationsquelleAutor der Antwort MetroidFan2002
Uri ist falsch, es gibt einen Weg, um das hinzufügen von Parametern an die main-Methode in Eclipse direkt, aber die Parameter werden nicht sehr flexibel (einige dynamische Parameter sind erlaubt). Hier ist, was Sie tun müssen:
Run -> Run configurations...
Java Application
oder indem Sie seinen Namen zu filtern.Program arguments
box. Nur für den Fall es ist nicht klar, Sie sind whitespace-getrennt, so"a b c"
(ohne Anführungszeichen) würde bedeuten, Sie würden Argumente a, b und c in Ihrem Programm.Ich tun, empfehlen jedoch die Verwendung von JUnit/wrapper-Klasse nur wie Uri gesagt hat-denn so erhalten Sie eine viel bessere Kontrolle über die tatsächlichen Parameter, als dies zu tun.
InformationsquelleAutor der Antwort Esko
AFAIK gibt es nicht ein built-in-Mechanismus von Eclipse.
Die nächstgelegene Sie bekommen können, ist das erstellen eines wrappers mit der Aufforderung, diese Werte und ruft die (hardcoded) main. Sie dann bekommen Sie die Ausführung der Geschichte, solange Sie nicht klar beendet Prozesse. Zwei Variationen dieses sind entweder die Verwendung von JUNit oder Injektion oder parameter, so dass Sie Ihre wrapper-immer verbindet Sie die richtige Klasse für Ihre wichtigsten.
InformationsquelleAutor der Antwort Uri
Ich bin mir nicht sicher, was Ihre Verwendungen sind, aber ich finde es praktisch, dass ich in der Regel verwenden Sie nicht mehr als einige Kommandozeilen-Parameter, so dass jedes dieser Szenarien wird eine run configuration, und ich nehme einfach die, die ich will aus dem Lauf der Geschichte.
Die Funktion, die Sie vorschlagen, scheint ein wenig übertrieben, IMO.
InformationsquelleAutor der Antwort Yuval Adam
Andere Idee:
Stellen Sie alle Parameter in einer properties-Datei (parameter = eine Eigenschaft in dieser Datei), dann in der main-Methode, laden Sie diese Datei (mit
Properties.load(*fileInputStream*)
).Also, wenn Sie ändern möchten, ein argument, Sie müssen nur zur Bearbeitung Ihrer Argumente.properties-Datei, und starten Sie Ihre Anwendung, ohne weitere Schritte zu tun...
Natürlich, dies ist nur für Entwicklungs-Zwecke, kann aber wirklich hilfreich, wenn Sie müssen, ändern Sie Ihre Argumente oft...
InformationsquelleAutor der Antwort romaintaz
Wenn Leerzeichen innerhalb der Zeichenfolge-argument, tun Sie den folgenden:
Ausführen > "Konfigurationen Ausführen" > Java Application > Argumente > Programm-Argumente
InformationsquelleAutor der Antwort Neyydupakkam Sundarasekaran