我正在尝试使用 sqlite-jdbc driver在我的 Build.scala
中,在编译之前生成一个带有一些必要表的 sqlite 数据库。这是我为实现这一目标而写的:
compile in Compile <<= (compile in Compile) map { result =>
val sqliteDb = file("my_sqlite.db")
if (!sqliteDb.exists()) {
val connection = DriverManager.getConnection(s"jdbc:sqlite:${sqliteDb.getAbsolutePath}")
val statement = connection.prepareStatement("create table EXAMPLE ( ... );")
statement.execute()
statement.close()
connection.close()
}
result
}
一切都很好,但是当我运行 compile
时,我得到了这个错误:
[error] (my-project/compile:compile) java.sql.SQLException: No suitable driver found for jdbc:sqlite:/Users/2rs2ts/src/my-project/my_sqlite.db
这有点令人沮丧,因为我认为我可以通过创建递归项目将依赖项添加到 Build.scala
的类路径中。我的目录结构如下所示:
my-project/
project/
Build.scala
build.sbt
project/
build.sbt
my-project/project/project/build.sbt
看起来像这样:
libraryDependencies += "org.xerial" % "sqlite-jdbc" % "3.8.10.1"
编辑:我也将该行放在 my-project/project/build.sbt
中,但它没有解决我的问题。
那么……我做错了什么?为了使 sqlite 驱动程序正常工作,我需要这种对类路径的依赖。
最佳答案
So... what did I do wrong?
你走得太远了两步。将 libraryDependencies
从 my-project/project/project/build.sbt
移动到 my-project/project/build.sbt
这样它就会在 my-project/project/Build.scala
中可用。
关于sqlite - 如何将库依赖添加到 Build.scala 的类路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31192904/