2017-01-03 8 views
0

В случае, если кто получает эту странную ошибку, которая не помогает объяснить, в чем проблема:Play 2.5 + Slick Ошибка конфигурации application.conf с URL

CreationException: Невозможно создать инжектор, см следующие ошибки : 1) Ошибка в настраиваемом поставщике, java.lang.IllegalStateException: при указании имени драйвера className необходимо также указать jdbcUrl при поиске play.api.db.evolutions.ApplicationEvolutionsProvider в play.api.db.evolutions.EvolutionsModule.bindings (EvolutionsModule.scala : 22): Binding (класс play.api.db.evolutions.ApplicationEvolutions для ProviderConstructionTarget (класс play.api.db.evolutions.ApplicationEvolutionsProvider) с нетерпением) (через модули: com.google.inject.util.Modules $ OverrideModule -> play .api.inject.guic e.GuiceableModuleConversions $$ Анон $ 1) при размещении play.api.db.evolutions.ApplicationEvolutions 1 ошибка

То, что я нашел странным, что ошибка исчезнет, ​​если вы удалите

"com.typesafe.play" %% "play-slick-evolutions" % "2.0.0" 

из вашей сборки .sbt.

ответ

2

Во всяком случае, проблема заключалась в том, что у меня был application.conf файл выглядит следующим образом:

slick.dbs.default.driver = "slick.driver.PostgresDriver$" 
slick.dbs.default.db.driver = "org.postgresql.Driver" 
slick.dbs.default.url = "jdbc:postgresql://localhost:5432/pusdienodb" 
slick.dbs.default.user = "pusdieno" 
slick.dbs.default.password = "password" 

оказывается, что и URL, пользователь и пароль также нужен .db. часть.

Так что ваша конфигурация должна выглядеть примерно так, в конце концов:

slick.dbs.default.driver = "slick.driver.PostgresDriver$" 
slick.dbs.default.db.driver = "org.postgresql.Driver" 
slick.dbs.default.db.url = "jdbc:postgresql://localhost:5432/pusdienodb" 
slick.dbs.default.db.user = "pusdieno" 
slick.dbs.default.db.password = "password"