質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Play Framework

Play Frameworkは、現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

Play Framework 2

Play Framework 2はPlayのメジャーバージョンです。現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

2272閲覧

ScalikeJDBCでmysqlに接続できません

sampel

総合スコア5

Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Play Framework

Play Frameworkは、現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

Play Framework 2

Play Framework 2はPlayのメジャーバージョンです。現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/02/23 02:59

編集2020/02/23 08:51

mysqlに接続できません。

playでScalikeJDBCを使いdocker上のmysqldbに接続できません。

エラーメッセージ

Unexpected exception CreationException: Unable to create injector, see the following errors: 1) No implementation for play.api.db.DBApi was bound. while locating play.api.db.DBApi for the 4th parameter of play.api.db.evolutions.ApplicationEvolutionsProvider.<init>(EvolutionsModule.scala:52) at play.api.db.evolutions.EvolutionsModule.<init>(EvolutionsModule.scala:23): Binding(class play.api.db.evolutions.ApplicationEvolutions to ProviderConstructionTarget(class play.api.db.evolutions.ApplicationEvolutionsProvider) eagerly) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$4) 2) No implementation for play.api.db.DBApi was bound. while locating play.api.db.DBApi for the 1st parameter of play.api.db.evolutions.DefaultEvolutionsApi.<init>(EvolutionsApi.scala:91) at play.api.db.evolutions.EvolutionsModule.<init>(EvolutionsModule.scala:22): Binding(interface play.api.db.evolutions.EvolutionsApi to ConstructionTarget(class play.api.db.evolutions.DefaultEvolutionsApi)) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$4) 2 errors No source available, here is the exception stack trace: ->com.google.inject.CreationException: Unable to create injector, see the following errors: 1) No implementation for play.api.db.DBApi was bound. while locating play.api.db.DBApi for the 4th parameter of play.api.db.evolutions.ApplicationEvolutionsProvider.<init>(EvolutionsModule.scala:52) at play.api.db.evolutions.EvolutionsModule.<init>(EvolutionsModule.scala:23): Binding(class play.api.db.evolutions.ApplicationEvolutions to ProviderConstructionTarget(class play.api.db.evolutions.ApplicationEvolutionsProvider) eagerly) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$4) 2) No implementation for play.api.db.DBApi was bound. while locating play.api.db.DBApi for the 1st parameter of play.api.db.evolutions.DefaultEvolutionsApi.<init>(EvolutionsApi.scala:91) at play.api.db.evolutions.EvolutionsModule.<init>(EvolutionsModule.scala:22): Binding(interface play.api.db.evolutions.EvolutionsApi to ConstructionTarget(class play.api.db.evolutions.DefaultEvolutionsApi)) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$4) 2 errors com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:543) com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:159) com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106) com.google.inject.Guice.createInjector(Guice.java:87) com.google.inject.Guice.createInjector(Guice.java:78) play.api.inject.guice.GuiceBuilder.injector(GuiceInjectorBuilder.scala:200) play.api.inject.guice.GuiceApplicationBuilder.build(GuiceApplicationBuilder.scala:155) play.api.inject.guice.GuiceApplicationLoader.load(GuiceApplicationLoader.scala:21) play.core.server.DevServerStart$$anon$1.$anonfun$reload$3(DevServerStart.scala:189) play.utils.Threads$.withContextClassLoader(Threads.scala:21) play.core.server.DevServerStart$$anon$1.reload(DevServerStart.scala:181) play.core.server.DevServerStart$$anon$1.get(DevServerStart.scala:141) play.core.server.AkkaHttpServer.handleRequest(AkkaHttpServer.scala:296) play.core.server.AkkaHttpServer.$anonfun$createServerBinding$1(AkkaHttpServer.scala:186) akka.stream.impl.fusing.MapAsync$$anon$30.onPush(Ops.scala:1261) akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:541) akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:423) akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:624) akka.stream.impl.fusing.GraphInterpreterShell$AsyncInput.execute(ActorGraphInterpreter.scala:501) akka.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:599) akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:768) akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:783) akka.actor.Actor.aroundReceive(Actor.scala:533) akka.actor.Actor.aroundReceive$(Actor.scala:531) akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:690) akka.actor.ActorCell.receiveMessage(ActorCell.scala:573) akka.actor.ActorCell.invoke(ActorCell.scala:543) akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269) akka.dispatch.Mailbox.run(Mailbox.scala:230) akka.dispatch.Mailbox.exec(Mailbox.scala:242) java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016) java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665) java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598) java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)

build.sbt

scala

1name := """db""" 2organization := "com.example" 3 4version := "1.0-SNAPSHOT" 5 6lazy val root = (project in file(".")).enablePlugins(PlayScala) 7 8scalaVersion := "2.13.1" 9 10libraryDependencies += guice 11libraryDependencies += "org.scalatestplus.play" %% "scalatestplus-play" % "5.0.0" % Test 12 13// Adds additional packages into Twirl 14//TwirlKeys.templateImports += "com.example.controllers._" 15 16// Adds additional packages into conf/routes 17// play.sbt.routes.RoutesKeys.routesImport += "com.example.binders._" 18 19libraryDependencies += jdbc 20libraryDependencies += evolutions 21libraryDependencies ++= Seq( 22 "com.h2database" % "h2" % "1.4.200", // your jdbc driver here 23 "org.scalikejdbc" %% "scalikejdbc" % "3.4.0", 24 "org.scalikejdbc" %% "scalikejdbc-config" % "3.4.0", 25 "org.scalikejdbc" %% "scalikejdbc-play-initializer" % "2.8.0-scalikejdbc-3.4" 26) 27libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.36" 28

###application.conf

# Database configuration # ~~~~~ # You can declare as many datasources as you want. # By convention, the default datasource is named `default` db.default.driver="com.mysql.jdbc.Driver" db.default.url="jdbc:mysql://localhost:3306/test" db.default.username="root" db.default.password="mysql" # ScalikeJDBC original configuration #db.default.poolInitialSize=10 #db.default.poolMaxSize=10 #db.default.poolValidationQuery= scalikejdbc.global.loggingSQLAndTime.enabled=true scalikejdbc.global.loggingSQLAndTime.singleLineMode=false scalikejdbc.global.loggingSQLAndTime.logLevel=debug scalikejdbc.global.loggingSQLAndTime.warningEnabled=true scalikejdbc.global.loggingSQLAndTime.warningThresholdMillis=5 scalikejdbc.global.loggingSQLAndTime.warningLogLevel=warn play.modules.enabled += "scalikejdbc.PlayModule" # scalikejdbc.PlayModule doesn't depend on Play's DBModule play.modules.disabled += "play.api.db.DBModule"

試したこと

importし直し,
libraryDependencies += jdbcから
libraryDependencies += javaJdbcに変更しましたが変化なし。

Play can't find play.db.DBModule on the classpath
上記の記事を参考に

補足情報(FW/ツールのバージョンなど)

環境
os:catalina 10.15.3
scala:2.13.1
play:2.8.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sampel

2020/02/23 08:51

修正依頼ありがとうございます 修正しました
guest

回答1

0

自己解決

play.modules.disabled += "play.api.db.DBModuleをコメントアウトすることでエラーが変わりました。

application.conf

play.modules.disabled += "play.api.db.DBModule ←ここをコメントアウト

投稿2020/02/25 08:10

sampel

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問