【发布时间】:2011-12-03 01:07:36
【问题描述】:
我在我的 java 应用程序中使用 sqlite。当我从 Netbeans 运行它时,它运行良好。 sqlite db 文件位于项目根目录(与 build.xml 同级)。
这是访问数据库文件的代码:
DriverManager.getConnection("jdbc:sqlite:database.db");
但是,当我构建项目并在 netbeans 之外运行 jar 文件时,我总是收到此错误:no such table: table_name
我的问题:放置“sqlite db”文件的正确位置在哪里?是否可以将其打包到 JAR 文件中?
我尝试将我的应用程序打包到一个 JAR 文件中(类似于 Eclipse 的 FatJar),但我仍然收到该错误。在这种情况下,我按照此博客中的说明修改 build.xml:
Netbeans single JAR
我也尝试在 src 目录中创建一个数据库文件夹,然后将 db 文件放入该文件夹 (src/database/database.db) 并使用
DriverManager.getConnection("jdbc:sqlite:src/database/database.db");
我可以在 netbeans 中运行它。但是当我在外面运行它时,我得到了这个错误:
path to 'src/database/database.db':C:\Windows\system32\src' does not exist
我知道 stackoverflow 中也有类似的问题,但大多数都没有具体的解决方案。让我知道是否有人找到了更好的。
非常感谢。
【问题讨论】: