Что делает com.typesafe.config.ConfigFactory.load(Config)?

Что делает метод load(Config) в классе com.typesafe.config.ConfigFactory? Чем выходная конфигурация будет отличаться от входной конфигурации?

документация говорит, что это:

Собирает стандартную конфигурацию с использованием пользовательского объекта Config вместо загрузки «application.conf». Объект Config будет помещен между эталонной конфигурацией по умолчанию и переопределениями по умолчанию, а затем разрешен.

Я не понимаю, что он говорит.

Код показывает, что:

public static Config load(Config config) {
    return load(checkedContextClassLoader("load"), config);
}

Кажется, он загружается с checkedContextClassLoader, которого я не понимаю. Может ли кто-нибудь дать краткое понятное объяснение этому?


person krismath    schedule 19.09.2019    source источник


Ответы (1)


Чем выходная конфигурация будет отличаться от входной конфигурации?

Он имеет эталонную конфигурацию (загруженную из reference.conf) в качестве запасного варианта для всего, что не определено во входных данных Config, а затем применяются переопределения из системных свойств («Будущие версии могут получить переопределения в большем количестве мест. Не гарантируется, что этот метод использует только системные характеристики.").

Кажется, он загружается с помощью checkedContextClassLoader, которого я не понимаю.

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

person Alexey Romanov    schedule 19.09.2019