Argumenti naredbenog retka mogu biti način određivanja konfiguracijskih svojstava za aplikaciju, a Java se ne razlikuje. Umjesto da kliknete ikonu aplikacije iz operativnog sustava, možete pokrenuti Java aplikacija iz prozora terminala. Uz naziv aplikacije, slijedi niz argumenata koji se zatim prosljeđuju na početnu točku aplikacije (tj. Glavna metoda, u slučaju Jave).
Na primjer, NetBeans ima nekoliko parametara pokretanja koji se mogu proslijediti aplikaciji kada se izvodi iz prozora terminala (npr.
određuje inačicu JDK koja će se koristiti umjesto zadanog JDK povezana s aplikacijom NetBeans).
Glavna metoda
Ispitajmo glavna metoda da biste vidjeli gdje se pojavljuju argumenti proslijeđeni aplikaciji:
Argumenti naredbenog retka mogu se naći u
zvao
Na primjer, razmotrimo aplikaciju pod nazivom
čija je jedina radnja ispis argumenata naredbenog retka koji su mu preneseni:
javna klasa CommandLineArgs {
javni statički void main (String [] args) {
// provjerite je li niz String prazan
ako (args.length == 0)
{
System.out.println ("Nisu preneseni argumenti naredbenog retka!");
}
// Za svaki niz u nizu String
// ispisati string.
for (String argument: args)
{
System.out.println (argument);
}
}
}
Sintaksa argumenata naredbenog retka
Java Runtime Engine (JRE) očekuje da će argumenti biti proslijeđeni slijedeći određenu sintaksu, poput:
java ProgramName vrijednost1 vrijednost2
Iznad "java" poziva JRE, nakon čega slijedi naziv programa koji zovete. Nakon njih slijede bilo kakvi argumenti u programu. Ne postoji ograničenje broja argumenata koje program može uzeti, ali redoslijed je presudan. JRE argumente prosljeđuje redoslijedom kojim se pojavljuju u naredbenom retku. Na primjer, razmotrite ovaj isječak koda odozgo:
javna klasa CommandLineArgs2 {
javni statički void main (String [] args) {
ako (args.length == 0)
{
System.out.println ("Nisu preneseni argumenti naredbenog retka!");
}
Kada se argumenti predaju Java programu, args [0] je prvi element matrice (vrijednost1 iznad), args [1] je drugi element (value2) i tako dalje. Kod args.length () definira duljinu polja.
Prolaženje argumenata naredbenog retka
U NetBeansu možemo proslijediti argumente naredbenog retka bez potrebe za sastavljanjem aplikacije i pokretanjem iz prozora terminala. Da biste odredili argumente naredbenog retka:
- Desnom tipkom miša kliknite projektnu mapu na
Projekti
prozor. - Odaberi
Svojstva
mogućnost otvaranjaSvojstva projekta
prozor. - U
Kategorije
popis s desne strane, odaberiteTrčanje
- U
argumenti
tekstnom polju koje se pojavljuje, odredite argumente naredbenog retka koje želite prenijeti u aplikaciju. Na primjer, ako uđemoJabukova banana mrkva
uargumenti
textbox i pokreniteCommandLineArgs
gore navedenog programa, dobit ćemo izlaz:
Razmatranje argumenata naredbenog retka
Argument naredbenog retka obično se prenosi s nekim informacijama o tome što učiniti s prenesenom vrijednošću. Argument koji aplikaciji obavještava za što je argument obično ima crticu ili dva prije naziva. Na primjer, primjer NetBeans za parametar pokretanja koji specificira JDK stazu
To znači da ćete morati raščistiti argumente naredbenog retka da biste shvatili što učiniti s vrijednostima. Postoji nekoliko Java okvira naredbenog retka za raščlanjivanje argumenata naredbenog retka. Ili možete napisati jednostavan analizator naredbenog retka ako argumenti koje trebate proslijediti nisu toliko mnogo:
kodirati iznad ili ispisuje argumente ili ih dodaj zajedno ako su cijeli brojevi. Na primjer, ovaj argument naredbenog retka dodao bi brojeve:
java CommandLineArgs -adnnumbers 11 22 33 44