java — передайте аргументы в качестве системных переменных, чтобы их можно было прочитать с помощью » System.getenv`

#java #jvm #command-line-arguments #jvm-arguments

Вопрос:

Я хочу передать аргумент java-приложению, чтобы программа могла прочитать его как системную переменную. По сути, переданные аргументы должны быть прочитаны: System.getenv("server.name")

Я знаю о свойствах spring — application.properties, но это не вариант для меня в текущем проекте. Вариант использования-чтение из системной среды или чтение тех, которые передаются в качестве флагов/аргументов в jvm с помощью System.getenv .

По сути, я должен уметь читать переданные аргументы System.getenv("server.name")

Примечание:

  1. Я пробовал -Dserver.name=xyz , --server.name=xyz но они не были прочитаны насквозь System.getenv() .
  2. У меня нет возможности создать системную переменную на этом сервере. Так что это не вариант. Единственное, что я могу сделать, это передать аргументы программе.

Комментарии:

1. Установите их так же, как и любую переменную среды для процесса: server.name=xyz java ...

2. @AndyTurner Я использую STS currently, как я могу установить их в STS, можете ли вы предложить