2012-12-27 24 views
10

Niektórzy z moich kolegów używają Eclipse 3.7.2 i Scala IDE 2.1 do programowania. Chcę użyć typesafe's config module do konfiguracji aplikacji. Chcę użyć domyślnej lokalizacji konfiguracji opartej na konwencjach. Zgodnie z przykładami i dokumentacją, domyślny config można znaleźć na następującej ścieżce w stosunku do głównego projektuDostęp do zasobów konfiguracyjnych w Scali IDE

/src/main/resources/application.conf 

Ale gdy uruchamiam mojego projektu przy użyciu ładowacza Scala aplikacji Scala IDE, typ SimpleConfig jest w stanie załadować dowolną konfigurację wartości ustawione w tym pliku. Alternatywą jest przekazanie właściwości systemu plików konfiguracyjnych przez sbt, ale nie chcę, aby ta ścieżka była jawnie ustawiona gdzieś. Czy ktoś może wskazać, co robię źle?

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) 

Odpowiedz

15

Trzeba dodać folder zasobów do budowania Java ścieżce:

  1. prawym przyciskiem myszy na projekcie w projekcie Explorer
  2. właściwości -> kliknij Java Build Path -> wybierz „Źródło "Zakładka
  3. kliknij "Dodaj folder ..." i dodać folder src/main/resources

aktualizacji: jeśli jesteś z nami ing zaćmienie SBT wtyczki można skonfigurować tak, aby automatycznie dodać folder zasobów na ścieżce klasy:

(od: sbteclipse docs)

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

+0

To załatwiło sprawę. Uprzejmie dziękuję. Zajrzę do sbteclipse. –

+0

Wprowadź ustawienia w ~/.sbt/0.13/build.sbt, aby ustawić dla wszystkich projektów SBT. – Ben