Получить список системных свойств только из командной строки - PullRequest
1 голос
/ 28 марта 2019

Это похоже на довольно простой вопрос, я пытаюсь найти список системных свойств, передаваемых в программу Java только из командной строки.Например, работает

java -Dsome.property=value -Dother.property=value2

Я пытаюсь получить список ПРОСТО этих свойств.Игнорируйте конкретные имена свойств в примере, фактические аргументы командной строки будут иметь произвольные имена, поэтому невозможно явно вызывать System.getProperty("some.property") для каждого нужного мне свойства.

System.getProperties() возвращает много свойств, которые я делаюне имеет никакого интереса. Можно ли различить свойства, заданные в командной строке при запуске программы, и свойства, полученные из других источников?

1 Ответ

3 голосов
/ 28 марта 2019

Можно ли различить свойства, заданные в команде? строка при запуске программы против тех, которые приходят из других?

Насколько я знаю, это не поддерживается. К тому времени, когда ваш код выполняется, системные свойства командной строки уже смешаны со всеми остальными.

В зависимости от того, что вы на самом деле пытаетесь достичь, одна вещь, которую следует учитывать, может заключаться в том, чтобы не устанавливать их как системные свойства командной строки, а вместо этого передавать их в качестве параметров вашей программе, чтобы вы могли оценить их и затем установить их как системные свойства в ваш main метод до выполнения большей части вашего другого кода.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...