无法使用 play-slick 1.0.1/slick 3.0 连接到 mysql 数据库:配置错误
Posted
技术标签:
【中文标题】无法使用 play-slick 1.0.1/slick 3.0 连接到 mysql 数据库:配置错误【英文标题】:Can't connect to mysql database with play-slick 1.0.1/slick 3.0 : configuration error 【发布时间】:2015-10-07 19:28:22 【问题描述】:我正在尝试从 anorm 迁移到 slick,使用 play 2.4.2,并收到配置错误:
play.api.Configuration$$anon$1: Configuration error[Cannot connect to database [dethcs]]
at play.api.Configuration$.configError(Configuration.scala:178) ~[play_2.11-2.4.0.jar:2.4.0]
...
Caused by: slick.SlickException: Error getting instance of Slick driver "slick.driver.mysqlDriver"
...
Caused by: java.lang.NoSuchMethodException: slick.driver.MySQLDriver.<init>()
我在 SO 上找到的先前答案都集中在拥有正确的 MySQL 驱动程序和其他依赖项上。我相信我的 build.sbt 涵盖了相关基础,包括:
libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.36"
libraryDependencies += "com.typesafe.play" %% "play-slick" % "1.0.1"
libraryDependencies += "com.typesafe.play" %% "play-slick-evolutions" % "1.0.1"
我的 application.conf 中的相关行是:
slick.dbs.dethcs.db.driver="com.mysql.jdbc.Driver"
slick.dbs.dethcs.driver="slick.driver.MySQLDriver"
slick.dbs.dethcs.user="redacted"
slick.dbs.dethcs.db.url="jdbc:mysql://localhost/mydb"
slick.dbs.dethcs.password="redacted"
对于如何解决此问题的任何建议,我将不胜感激——我猜这很愚蠢,但我发现很难获得特定于最新版本 slick 的文档和示例——如果有帮助,可以提供更多信息。
【问题讨论】:
【参考方案1】:我自己没有尝试过,但看起来您引用的是 MySQLDriver
类而不是相应的对象。在其中添加一个尾随$
,您应该可以开始了:
slick.dbs.dethcs.driver="slick.driver.MySQLDriver$"
【讨论】:
以上是关于无法使用 play-slick 1.0.1/slick 3.0 连接到 mysql 数据库:配置错误的主要内容,如果未能解决你的问题,请参考以下文章
Play-Slick 插件是不是完全支持 Slick 2.0?