Mit Befehlszeilenargumenten können Konfigurationseigenschaften für eine Anwendung angegeben werden, und Java ist nicht anders. Anstatt auf ein Anwendungssymbol im Betriebssystem zu klicken, können Sie die Java-Anwendung über ein Terminalfenster ausführen. Zusammen mit dem Anwendungsnamen kann eine Reihe von Argumenten folgen, die dann an den Startpunkt der Anwendung übergeben werden (d. H. Die Hauptmethode im Fall von Java)..
NetBeans verfügt beispielsweise über eine Reihe von Startparametern, die an die Anwendung übergeben werden können, wenn sie in einem Terminalfenster ausgeführt wird (z.,
Gibt eine Version des JDK an, die anstelle des mit der NetBeans-Anwendung verknüpften Standard-JDK verwendet werden soll..
Untersuchen wir die Hauptmethode, um festzustellen, wo die an eine Anwendung übergebenen Argumente angezeigt werden:
Die Befehlszeilenargumente finden Sie in der
namens
Betrachten wir zum Beispiel eine Anwendung namens
Die einzige Aktion besteht darin, die übergebenen Befehlszeilenargumente auszudrucken:
öffentliche Klasse CommandLineArgs
public static void main (String [] args)
// Überprüfen Sie, ob das String-Array leer ist
if (args.length == 0)
System.out.println ("Es wurden keine Befehlszeilenargumente übergeben!");
// Für jeden String im String-Array
// drucke den String aus.
for (String argument: args)
System.out.println (Argument);
Die Java Runtime Engine (JRE) erwartet, dass Argumente nach einer bestimmten Syntax übergeben werden:
Java ProgramName value1 value2
Oben ruft "java" die JRE auf, gefolgt vom Namen des aufgerufenen Programms. Daran schließen sich Argumente zum Programm an. Es gibt keine Begrenzung für die Anzahl der Argumente, die ein Programm annehmen kann, aber die Reihenfolge ist kritisch. Die JRE übergibt die Argumente in der Reihenfolge, in der sie in der Befehlszeile angezeigt werden. Betrachten Sie beispielsweise diesen Codeausschnitt von oben:
öffentliche Klasse CommandLineArgs2
public static void main (String [] args)
if (args.length == 0)
System.out.println ("Es wurden keine Befehlszeilenargumente übergeben!");
Wenn Argumente an ein Java-Programm übergeben werden, ist args [0] das erste Element des Arrays (Wert1 oben), args [1] das zweite Element (Wert2) und so weiter. Der Code args.length () definiert die Länge des Arrays.
In NetBeans können wir Befehlszeilenargumente übergeben, ohne die Anwendung erstellen und über ein Terminalfenster ausführen zu müssen. So geben Sie die Befehlszeilenargumente an:
ProjekteFenster.
EigenschaftenOption zum Öffnen
ProjekteigenschaftenFenster.
KategorienListe auf der rechten Seite, wählen Sie
Lauf
ArgumenteGeben Sie im angezeigten Textfeld die Befehlszeilenargumente an, die Sie an die Anwendung übergeben möchten. Zum Beispiel, wenn wir eintreten
Apfel-Bananen-Karottein dem
ArgumenteTextfeld und führen Sie die
CommandLineArgsProgramm oben aufgeführt, werden wir die Ausgabe erhalten:
In der Regel wird ein Befehlszeilenargument mit Informationen darüber übergeben, wie mit dem übergebenen Wert verfahren werden soll. Das Argument, das der Anwendung mitteilt, wofür das Argument ist, enthält in der Regel ein oder zwei Bindestriche vor dem Namen. Das NetBeans-Beispiel für den Startparameter, der den JDK-Pfad angibt, lautet beispielsweise
Das bedeutet, dass Sie die Befehlszeilenargumente analysieren müssen, um herauszufinden, was mit den Werten geschehen soll. Es gibt mehrere Java-Befehlszeilen-Frameworks zum Analysieren von Befehlszeilenargumenten. Sie können auch einen einfachen Befehlszeilenparser schreiben, wenn Sie nicht so viele Argumente übergeben müssen:
Der obige Code gibt die Argumente entweder aus oder addiert sie, wenn es sich um Ganzzahlen handelt. Mit diesem Befehlszeilenargument würden beispielsweise die folgenden Zahlen hinzugefügt:
Java CommandLineArgs -Addnumbers 11 22 33 44