Доступ к ресурсам конфигурации в Scala IDE

Некоторые из моих коллег используют Eclipse 3.7.2 и Scala IDE 2.1 для разработки. Я хочу использовать configafe config module для настройки приложения. Я хочу использовать местоположение конфигурации по умолчанию, основанное на согласии. Согласно примерам и документации, конфигурацию по умолчанию можно найти по следующему пути относительно корня проекта

/src/main/resources/application.conf

Но когда я запускаю свой проект с помощью Scala IDE Scala Application loader, тип SimpleConfig не может загрузить любые значения конфигурации, установленные в этом файле. Альтернативой является передача свойства конфигурации config файла через sbt, но я не хочу явно указывать этот путь где-то. Может ли кто-нибудь указать, что я делаю неправильно?

Exception in thread "main" java.lang.ExceptionInInitializerError
    at com.foo.dataservices.MyServer.main(MyServer.scala)
Caused by: com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'bar'
    at com.typesafe.config.impl.SimpleConfig.findKey(SimpleConfig.java:115)
    at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:138)
    at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:150)
    at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:155)
    at com.typesafe.config.impl.SimpleConfig.getConfigNumber(SimpleConfig.java:170)
    at com.typesafe.config.impl.SimpleConfig.getInt(SimpleConfig.java:181)

Ответ 1

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

  • Щелкните правой кнопкой мыши по проекту в проводнике проекта
  • свойства → нажмите "Путь сборки Java" → выберите вкладку "Источник"
  • нажмите "Добавить папку..." и добавьте папку src/main/resources.

update: если вы используете плагин sbt eclipse, вы можете настроить его для автоматического добавления папки ресурсов в путь к классам:

(from: sbteclipse docs)

EclipseKeys.createSrc := EclipseCreateSrc.Default + EclipseCreateSrc.Resource