Мне нужно получить все свойства, переданные пользователем при запуске приложения.
java -Dprop1=val1 -Dprop2=val2 -jar MyApp.jar
Проблема в том, что я не знаю названия свойств, которые я могу использовать внутри
System.getProprty(propName)
Когда я делаю
System.getProperties()
Он возвращает все свойства, переданные пользователем, вместе с некоторыми другими свойствами системы.
Есть ли способ определить, какое свойство передается пользователем, используя
-Dprop=val
при запуске приложения.
Вы можете сами расшифровать командную строку.
List<String> inputArguments = ManagementFactory.getRuntimeMXBean().getInputArguments();
Затем вы можете выбрать аргументы, которые начинаются с -D
Вы можете получить только аргументы командной строки, которые вы передаете в переменную аргументы основных методов вашего приложения загрузки Spring.