Gli argomenti della riga di comando possono essere un modo per specificare le proprietà di configurazione per un'applicazione e Java non è diverso. Invece di fare clic sull'icona di un'applicazione dal sistema operativo, è possibile eseguire l'applicazione Java da una finestra del terminale. Insieme al nome dell'applicazione, possono seguire una serie di argomenti che vengono quindi passati al punto iniziale dell'applicazione (ovvero, il metodo principale, nel caso di Java).
Ad esempio, NetBeans ha un numero di parametri di avvio che possono essere passati all'applicazione quando viene eseguita da una finestra del terminale (ad es..,
specifica una versione del JDK da utilizzare al posto del JDK predefinito associato all'applicazione NetBeans).
Esaminiamo il metodo principale per vedere dove vengono visualizzati gli argomenti passati a un'applicazione:
Gli argomenti della riga di comando sono disponibili in
chiamato
Ad esempio, consideriamo un'applicazione chiamata
la cui unica azione è stampare gli argomenti della riga di comando passati ad esso:
public class CommandLineArgs
public static void main (String [] args)
// controlla se l'array String è vuoto
if (args.length == 0)
System.out.println ("Non sono stati passati argomenti da riga di comando!");
// Per ogni stringa nell'array String
// stampa la stringa.
per (Argomento String: args)
System.out.println (argomento);
Java Runtime Engine (JRE) prevede che gli argomenti vengano passati seguendo una sintassi particolare, in questo modo:
java ProgramName valore1 valore2
Sopra, "java" invoca il JRE, che è seguito dal nome del programma che stai chiamando. Questi sono seguiti da qualsiasi argomento per il programma. Non c'è limite al numero di argomenti che un programma può accettare, ma l'ordine è fondamentale. JRE passa gli argomenti nell'ordine in cui appaiono sulla riga di comando. Ad esempio, considera questo frammento di codice dall'alto:
public class CommandLineArgs2
public static void main (String [] args)
if (args.length == 0)
System.out.println ("Non sono stati passati argomenti da riga di comando!");
Quando gli argomenti vengono passati a un programma Java, args [0] è il primo elemento dell'array (valore 1 sopra), args [1] è il secondo elemento (valore2) e così via. Il codice args.length () definisce la lunghezza dell'array.
In NetBeans, possiamo passare gli argomenti della riga di comando senza dover creare l'applicazione ed eseguirla da una finestra del terminale. Per specificare gli argomenti della riga di comando:
progettifinestra.
Proprietàopzione per aprire
Proprietà del progettofinestra.
categorieelenco sul lato destro, scegliere
Correre
argomenticasella di testo visualizzata, specifica gli argomenti della riga di comando che desideri passare all'applicazione. Ad esempio, se entriamo
Mela Banana Carotanel
argomenticasella di testo ed eseguire il
CommandLineArgsprogramma elencato sopra, otterremo l'output:
In genere, viene passato un argomento della riga di comando con alcune informazioni su cosa fare con il valore che viene passato. L'argomento che informa l'applicazione a cosa serve l'argomento ha in genere un trattino o due prima del suo nome. Ad esempio, l'esempio NetBeans per il parametro startup che specifica il percorso JDK è
Ciò significa che dovrai analizzare gli argomenti della riga di comando per capire cosa fare con i valori. Esistono diversi framework della riga di comando Java per l'analisi degli argomenti della riga di comando. Oppure potresti scrivere un semplice parser da riga di comando se gli argomenti che devi passare non sono così tanti:
Il codice sopra o stampa gli argomenti o li somma insieme se sono numeri interi. Ad esempio, questo argomento della riga di comando aggiungerebbe i numeri:
java CommandLineArgs -addnumbers 11 22 33 44