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.