首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用postgres驱动程序处理灵活的数据库配置问题

使用postgres驱动程序处理灵活的数据库配置问题
EN

Stack Overflow用户
提问于 2017-04-13 18:15:47
回答 1查看 2.6K关注 0票数 4

我正在尝试用slick和postgres设置一个简单的play 2.5应用程序,但似乎无法克服错误。

我所犯的错误是

代码语言:javascript
复制
[error] p.a.d.s.DefaultSlickApi - Failed to create Slick database config for key default.
slick.SlickException: Error getting instance of profile "slick.jdbc.PostgresProfile"
...
Caused by: java.lang.InstantiationException: slick.jdbc.PostgresProfile
...
Caused by: java.lang.NoSuchMethodException: slick.jdbc.PostgresProfile.<init>()
...

我的application.conf中有以下内容

代码语言:javascript
复制
slick.dbs.default {
  driver = "slick.jdbc.PostgresProfile"
  db = {
    driver = "org.postgresql.Driver"

    user = postgres
    host = localhost
    port = 5432
    password = ""

    host = ${?EVENTUAL_DB_HOST}
    port = ${?EVENTUAL_DB_PORT}
    user = ${?EVENTUAL_DB_USER}
    password = ${?EVENTUAL_DB_PW}
    url = "jdbc:postgresql://"${slick.dbs.default.db.host}":"${slick.dbs.default.db.port}"/"${slick.dbs.default.db.user}
  }
}

而这些在我的依赖关系中

代码语言:javascript
复制
  "com.typesafe.play" %% "play-slick" % "2.1.0",
  "com.typesafe.slick" %% "slick-codegen" % "3.1.1",
  "com.github.tminglei" %% "slick-pg" % "0.15.0-RC", //"0.14.6",
  "org.postgresql" % "postgresql" % "42.0.0"

如果我将slick.dbs.default.driver更改为slick.driver.PostgresDriver (显然现在已不再推荐),我将得到

代码语言:javascript
复制
[error] p.a.d.s.DefaultSlickApi - Failed to create Slick database config for key default.
slick.SlickException: Error getting instance of profile "slick.driver.PostgresDriver"
...
Caused by: java.lang.ClassNotFoundException: slick.driver.PostgresDriver
...

我想把头发拔出来,却找不到其他的资源。有人知道这是怎么回事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-17 06:28:07

当然,根据insan-e的推荐,我所要做的就是添加一个$。所以slick.dbs.default.driver应该是"slick.jdbc.PostgresProfile$"

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43399137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档