Play 无法连接 MySQL
Posted
技术标签:
【中文标题】Play 无法连接 MySQL【英文标题】:Play can't connect to MySQL 【发布时间】:2015-09-30 12:03:23 【问题描述】:我无法让 Play 连接到我的 mysql 数据库。我更新了 application.conf 文件以包含数据库连接信息,但出现以下错误:
CreationException: Unable to create injector, see the following errors:1) Error in custom provider, Configuration error: Configuration error[Cannot connect to database [default]]
while locating play.api.db.DBApiProvider
while locating play.api.db.DBApi
for field at play.api.db.NamedDatabaseProvider.dbApi(DBModule.scala:80)
while locating play.api.db.NamedDatabaseProvider
at com.google.inject.util.Providers$GuicifiedProviderWithDependencies.initialize(Providers.java:149)
at play.api.db.DBModule$$anonfun$namedDatabaseBindings$1.apply(DBModule.scala:34):
Binding(interface play.api.db.Database qualified with QualifierInstance(@play.db.NamedDatabase(value=default)) to ProviderTarget(play.api.db.NamedDatabaseProvider@14190249)) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$1)
Caused by: Configuration error: Configuration error[Cannot connect to database [default]]
这是我的 application.conf 文件:
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost:3306/appdb"
db.default.username=root
db.default.password="root"
ebean.default = ["models.*"]
db.default.jndiName = DefaultDS
# JPA Configuration
jpa.default = defaultPersistenceUnit
我正在使用 Gradle 构建所有内容,并添加了所需的依赖项(来自 build.gradle):
dependencies
play "org.hibernate:hibernate-entitymanager:4.3.10.Final"
play "com.typesafe.play:play-java-jpa_2.11:2.4.2"
play "com.typesafe.play:play-java-jdbc_2.11:2.4.3"
我可以使用 MySQL Workbench 连接到数据库(是的,我创建了 appdb),没有任何问题,甚至可以插入数据。
我已经搜索了多个来源,但没有运气。任何帮助表示赞赏。
【问题讨论】:
【参考方案1】:如果其他人有同样的问题,正确的导入不是 com.typesafe.play:play-java-jdbc_2.11:2.4.3 使用 mysql:mysql-connector-java:5.1.36 就可以了。
【讨论】:
以上是关于Play 无法连接 MySQL的主要内容,如果未能解决你的问题,请参考以下文章