Не удается подключиться к базе данных mysql с play-slick 1.0.1/slick 3.0: ошибка конфигурации

Я пытаюсь перейти от 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$"

Другие вопросы по тегам