【发布时间】:2016-12-21 00:18:47
【问题描述】:
我正在尝试将 sqlite 数据库与 Slick 3.1.1 连接,在 Android 开发中使用 Macroid for Scala。
这是我的代码:
lazy val db = Database.forURL(
url = "jdbc:sqlite:" + getApplicationContext().getFilesDir() + "events.txt",
driver = "org.sqlite.JDBC")
dbSetupAction()
dbSetupAction:
def dbSetupAction() = {
val initActions = DBIO.seq(
events.schema.create
)
val futureInitActions = db.run(initActions)
futureInitActions.onComplete {
case Success(s) => Log.d("FICHEROS Success", s.toString)
case Failure(ex) => Log.d("FICHEROS Failure", ex.toString)
}
}
事件类:
class Events(tag: Tag) extends Table[(Int, Int, Double)](tag, "EVENTS"){
def id = column[Int]("ID", O.PrimaryKey, O.AutoInc)
def eventType = column[Int]("EVENT_TYPE")
def timeTag = column[Double]("TIMETAG")
def * = (id, eventType, timeTag)
}
我得到的输出错误是:
D/FICHEROS 失败:java.lang.ClassNotFoundException: org.sqlite.JDBC
在我的 build.sbt 中,我添加了:
libraryDependencies ++= Seq(
aar("org.macroid" %% "macroid" % "2.0.0-M4"),
aar("com.android.support" % "support-v4" % "21.0.0"),
"org.xerial" % "sqlite-jdbc" % "3.8.11.2",
"com.typesafe.slick" %% "slick" % "3.1.1",
"org.slf4j" % "slf4j-nop" % "1.6.4")
提前致谢。
【问题讨论】:
标签: android scala sqlite jdbc slick