Как загрузить файл конфигурации по умолчанию в Scala? - PullRequest
0 голосов
/ 21 ноября 2018

Существует два конфигурационных файла beam.conf и beam-template.conf.Реализация этих файлов конфигурации сделана в BeamConfig.scala. Функция для передачи конфигурации в BeamConfig.scala:

def apply(c: com.typesafe.config.Config): BeamConfig = {
  BeamConfig(
    beam = BeamConfig.Beam(
      if (c.hasPathOrNull("beam")) c.getConfig("beam")
      else com.typesafe.config.ConfigFactory.parseString("beam{}")
    ),
    matsim = BeamConfig.Matsim(
      if (c.hasPathOrNull("matsim")) c.getConfig("matsim")
      else com.typesafe.config.ConfigFactory.parseString("matsim{}")
    )
  )
}

Поэтому я хочу загрузить beam-template.conf в качестве конфигурации по умолчанию.Я пытаюсь это сделать так:

def setConfParams(conf: TypesafeConfig): Unit = {
  val defaultBeamConfig = BeamConfig(ConfigFactory.defaultReference())
  println(defaultBeamConfig.beam.physsim.skipPhysSim)
}

Но это дает мне эту ошибку

Исключение в потоке "main" com.typesafe.config.ConfigException $ Missing: Не найдено ни одной настройки конфигурации для ключа

Есть ли способ загрузить beam-template.conf, передав экземпляр beam-template в BeamConfig.scala.

Примечание: Мне нужно передать beam-template.conf экземпляр вместо его пути.

...