播放框架SLICK(Scalaquery)教程
发布时间:2020-12-16 09:32:41 所属栏目:安全 来源:网络整理
导读:有没有人知道使用Play框架与SLICK(ScalaQuery)的好教程或示例项目(github)?我正在努力使他们一起工作。 我收到这个错误: [info] play - Application started (Dev)[error] application - ! @6b13oi41c - Internal server error,for request [GET /listBook
有没有人知道使用Play框架与SLICK(ScalaQuery)的好教程或示例项目(github)?我正在努力使他们一起工作。
我收到这个错误: [info] play - Application started (Dev) [error] application - ! @6b13oi41c - Internal server error,for request [GET /listBooks] -> play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NoClassDefFoundError: Could not initialize class scala.slick.ast.opt.Relational$]] at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1-2.0.2.jar:2.0.2] at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1-2.0.2.jar:2.0.2] at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor-2.0.2.jar:2.0.2] at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1-2.0.2.jar:2.0.2] at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor-2.0.2.jar:2.0.2] at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor-2.0.2.jar:2.0.2] Caused by: java.lang.NoClassDefFoundError: Could not initialize class scala.slick.ast.opt.Relational$ at scala.slick.driver.BasicProfile$class.processAST(BasicProfile.scala:18) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] at scala.slick.driver.PostgresDriver$.processAST(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] at scala.slick.driver.BasicProfile$class.createQueryBuilder(BasicProfile.scala:22) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] at scala.slick.driver.PostgresDriver$.createQueryBuilder(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] at scala.slick.driver.BasicProfile$class.buildSelectStatement(BasicProfile.scala:23) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] at scala.slick.driver.PostgresDriver$.buildSelectStatement(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2] [error] application - 这是我的书模型: package models import play.api.db._ import play.api.Play.current import scala.slick.driver.PostgresDriver.simple._ import scala.slick.ql.{MappedTypeMapper} import scala.slick.session.{Session,Database} case class Book(name: String,filename: String) object Book extends Table[(Long,String,String)]("book") { lazy val database = Database.forDataSource(DB.getDataSource()) def id = column[Long]("id",O PrimaryKey,O AutoInc) def name = column[String]("name",O NotNull) def filename = column[String]("filename",O NotNull) def * = id ~ name ~ filename def findAll() : Seq[Book] = database.withSession { implicit db:Session => (for(t <- this) yield t.name ~ t.filename).list.map(attrs => Book(attrs._1,attrs._2)) } def create(book: Book): Unit = database.withSession { implicit db:Session => this.name ~ this.filename insert(book.name,book.filename) } } 编辑: import sbt._ import Keys._ import PlayProject._ object ApplicationBuild extends Build { val appName = "PlayWithScala" val appVersion = "1.0-SNAPSHOT" val appDependencies = Seq( // Add your project dependencies here,"postgresql" % "postgresql" % "9.1-902.jdbc4","com.typesafe" % "slick_2.10.0-M4" % "0.10.0-M2" ) val main = PlayProject(appName,appVersion,appDependencies,mainLang = SCALA).settings( // Add your own project settings here ) } 解决方法
我分享了这个链接作为一个教程
http://www.jroller.com/ouertani/entry/getting_started_with_play_2
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |