Scala 如何在Slick中指定SQLite数据库的路径?

Scala 如何在Slick中指定SQLite数据库的路径?,scala,sqlite,jdbc,playframework,slick,Scala,Sqlite,Jdbc,Playframework,Slick,我正在尝试使用Scala和Slick的Play框架进行数据访问 我正在玩play scala简介示例应用程序。我正在尝试设置自己的数据库,而不是使用捆绑在内存中的H2数据库 我不知道如何指定数据库文件的路径 如果application.conf中的代码为: slick.dbs.default.db.url="jdbc:sqlite:/test.db" slick.dbs.default.db.driver="org.sqlite.JDBC" 我的test.db文件应该放在哪里 这是否意

我正在尝试使用Scala和Slick的Play框架进行数据访问

我正在玩play scala简介示例应用程序。我正在尝试设置自己的数据库,而不是使用捆绑在内存中的H2数据库

我不知道如何指定数据库文件的路径

如果application.conf中的代码为:

  slick.dbs.default.db.url="jdbc:sqlite:/test.db"
  slick.dbs.default.db.driver="org.sqlite.JDBC"
我的test.db文件应该放在哪里


这是否意味着test.db文件应该在web应用程序的主目录中,这意味着根play scala intro dir或app/assets dir?

我认为将您的数据库存储在Java资源中(这就是
assets
最终的位置)听起来不是一个好主意。如果在向DB写信的过程中没有出现任何问题,我会感到惊讶

最好将其与JAR放在同一目录中,甚至最好设置一些默认值并让它们被覆盖:

database.location="test.db"
database.location=${?DBLOCATION}

slick.dbs.default.db.url="jdbc:sqlite:"${database.location}
这应该假设您的数据库是names
test.db
,并放在您的工作目录中(请参阅:)。可以使用环境变量
DBLOCATION
覆盖它,如:

export DBLOCATION="/tmp/my/database.db"
# run Play application