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

23

У меня есть основной класс, который ожидает определенные свойства, которые я передаю, используя опцию -D. Я могу получить доступ к этому в своей среде IDE, отправив их в качестве параметров VM.

Я упакую это приложение в файл jar с помощью Maven и при попытке выполнить следующее:

java -jar myjar.jar -Denviroment=dev

или

java -jar myjar.jar "-Denvironment=dev"

Свойство системы окружения не получает.

Любые указатели на то, что происходит?

    
задан arjunj 23.04.2015 в 02:24
источник
  • Я смог понять это. Просто так помогает кому-то другому. Все, что я сделал, это передать -D перед банкой, как показано ниже: java -jar -Denvironment = dev myjar.jar (не уверен, как это изменит ситуацию!) –  arjunj 23.04.2015 в 02:28
  • -jar myjar.jar следует добавить последним в конце -D См. ниже ответ –  SashikaXP 08.08.2017 в 06:13

1 ответ

44

Передайте аргументы перед -jar . Если вы передадите их после файла jar, они интерпретируются как параметры командной строки и передаются в String[] args в main . Как,

java -Denviroment=dev -jar myjar.jar 
    
ответ дан Elliott Frisch 23.04.2015 в 02:30