Come si passano i parametri a un file jar al momento dell'esecuzione?


101

Come si passano i parametri a un file JAR al momento dell'esecuzione?

Risposte:


144

Per passare argomenti al jar:

java -jar myjar.jar one two

È possibile accedervi nel metodo main () di "Main-Class" (menzionato nel manifest.mffile di un JAR).

String one = args[0];  
String two = args[1];  


15

Puoi farlo con qualcosa del genere, quindi se non vengono specificati argomenti continuerà comunque:

public static void main(String[] args) {
    try {
        String one = args[0];
        String two = args[1];
    }
    catch (ArrayIndexOutOfBoundsException e){
        System.out.println("ArrayIndexOutOfBoundsException caught");
    }
    finally {

    }
}

E quindi avvia l'applicazione:

java -jar myapp.jar arg1 arg2

21
Non dovresti mai usare eccezioni per governare il tuo codice. Invece, dovresti controllare la lunghezza dell'array prima di accedervi!
chuck258

Bene, se il programma deve SEMPRE avere uno o più parametri, non averne è IMHO un caso legittimo per l'utilizzo di un'eccezione.
MikeW

6
java [ options ] -jar file.jar [ argument ... ]

se è necessario passare il file delle proprietà log4j, utilizzare l'opzione seguente

-Dlog4j.configurationFile=directory/file.xml


java -Dlog4j.configurationFile=directory/file.xml -jar <JAR FILE> [arguments ...]
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.