2015-08-05 18 views
5

Znalazłem wiele podobnych pytań, ale some z nich jest bez odpowiedzi i others nie działają dla mnie.
Moim zadaniem jest odczytanie pliku application.conf z pliku build.sbt, aby zachować całą konfigurację w jednym miejscu. Ale moja build.sbt z kodemprzeczytaj application.conf z build.sbt

import com.typesafe.config._ 

val conf = com.typesafe.config.ConfigFactory.parseFile(new File("conf/application.conf")).resolve() 

version := conf.getString("app.version") 

nie skompilować z błędem

error: object typesafe is not a member of package com 

Jak rozwiązać ten problem?

Odpowiedz

6

Aby to zadziałało, ważne jest, aby wiedzieć, że projekty sbt mają strukturę rekursywną, więc kiedy uruchomisz sbt, faktycznie zaczniesz projekt, który ma jako folder główny katalog project w twoim głównym projekcie.

Biorąc pod uwagę, że aby rozwiązać problem, musisz dodać typesafe-config jako zależność biblioteki również dla ciebie sbt projektu; w tym celu dodaj build.sbt w folderze project projektu głównego i określ zależność tam, jak zwykle (np. libraryDependencies += ...).

+0

Wielkiej, dzięki !! –

2

użyć tego w kodzie

import com.typesafe.config.{Config, ConfigFactory} 
private val config = ConfigFactory.load() 

aw pliku build.sbt

libraryDependencies += "com.typesafe" % "config" % "1.3.0"