109 votes

Comment puis-je passer des paramètres à un fichier jar au moment de l'exécution ?

Comment passer des paramètres à un fichier JAR au moment de l'exécution?

158voto

Reji Points 940

Pour passer des arguments au jar:

java -jar myjar.jar one two

Vous pouvez y accéder dans la méthode main() de "Main-Class" (mentionné dans le fichier manifest.mf d'un JAR).

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

42voto

Xn0vv3r Points 7778

La Documentation JAVA dit:

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

et

... Les arguments non-optionnels après le nom de la classe ou du fichier JAR sont passés à la fonction principale...

Il se peut que vous deviez mettre les arguments entre guillemets simples.

16voto

Vous pouvez le faire avec quelque chose comme cela, donc si aucun argument n'est spécifié, il continuera quand même :

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

    }
}

Et ensuite lancez l'application :

java -jar myapp.jar arg1 arg2

6voto

Bachan Joseph Points 280
java [ options ] -jar file.jar [ argument ... ]

si vous avez besoin de passer le fichier de propriétés log4j, utilisez l'option ci-dessous

-Dlog4j.configurationFile=directory/file.xml

java -Dlog4j.configurationFile=directory/file.xml -jar  [arguments ...]

1voto

Trying2Learn Points 11

Si les arguments ont des espaces, vous pouvez les passer comme indiqué ci-dessous.

java -jar myjar.jar 'premier argument' 'deuxième argument'

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X