Как установить значение списка по умолчанию, если системная переменная отсутствует в конфигурации typesafe?

Вот документация typesafe config.

В соответствии с ним можно переопределить такие свойства:

akka {
    loglevel = DEBUG
    loglevel = ${?LOG_LEVEL}
}

Таким образом, в этом случае logLevel будет DEBUG или значением системной переменной LOG_LEVEL.

Как насчет свойств конфигурации списка?

akka {
    someListProperty = ["oneValue"]
    someListProperty = [${?LOG_LEVEL}] 
}

В этом случае, если системная переменная отсутствует, someListProperty будет переопределен пустым списком.

Как я могу установить значение списка по умолчанию, если системная переменная отсутствует?


person Cherry    schedule 30.10.2014    source источник
comment
Аналогичный ответ на вопрос: stackoverflow.com/questions/38822992/   -  person Vadzim    schedule 31.10.2017


Ответы (2)


Старый вопрос, но у меня была похожая проблема. Вы можете сделать это следующим образом:

akka {
    defaultProperty = "oneValue"
    defaultProperty = ${?SYSTEM_VAR}
    someListProperty = [${akka.defaultProperty}]
}
person FrancMo    schedule 07.09.2017

Одним из возможных способов было бы иметь конфигурацию «по умолчанию» и использовать резервную копию этой конфигурации с установленным списком переменных.

Например, этот источник использует переопределение конфигурации в строке 58, а затем в строке 92 изменяет конфигурацию.

person jdevelop    schedule 06.11.2014