Как передать параметры в файл jar во время выполнения?

Как передать параметры в файл JAR во время выполнения?

Ответ 1

Чтобы передать аргументы в банку:

java -jar myjar.jar one two

Вы можете получить доступ к ним в основном() методе "Main-Class" (упомянутом в файле manifest.mf JAR).

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

Ответ 2

Документация JAVA гласит:

Java [параметры] -jar file.jar [аргумент...]

а также

... Неопционные аргументы после имени класса или имени файла JAR передаются в основную функцию...

Может быть, вы должны поместить аргументы в одинарные кавычки.

Ответ 3

Вы можете сделать это с помощью чего-то вроде этого, поэтому, если аргументы не указаны, он будет продолжаться в любом случае:

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

    }
}

И затем запустите приложение:

java -jar myapp.jar arg1 arg2

Ответ 4

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

если вам нужно передать файл свойств log4j, используйте опцию ниже

-Dlog4j.configurationFile=directory/file.xml


java -Dlog4j.configurationFile=directory/file.xml -jar <JAR FILE> [arguments ...]