0

我有一个 Java swing 项目,需要在其他计算机上进行测试。我有一些类和一个存储登录信息的 sqlite 数据库。我也有一些 lib jars。该应用程序从用户那里获取信息并将其存储在 sqlite db 中,然后将数据推送到 Web。我想打包我的项目,以便使用我的项目的人只需双击可执行文件或 jar。

我试图在 Eclipse 中导出到可运行的 Jar 文件,但这并没有给出预期的结果。在创建可运行 jar 并且我第一次运行它之后,它会在它旁边创建 sqlite db,并且不会连接到 Web 链接并发送信息。

如何正确打包我的数据?这是我的文件夹结构 -

root
--src
----默认包
----rest 包
----images
--lib
--file.fcl
--db.sqlite

4

1 回答 1

0

每当您在 Eclipse 之外运行更改项目文件夹结构中的任何文件的程序时,更改的文件都是“不同步”的。要使事情恢复同步,请右键单击包资源管理器中的项目并选择“刷新”(您也可以在包资源管理器中选择项目并按 F5)。

如果您的代码正在创建数据库而不是使用现有的数据库,那么它向我建议您的数据库位置是为您的 eclipse 环境设置的,但不是针对一般情况。对于 java 应用程序,您必须知道(或设置)“当前目录”或“当前文件夹”——这是文件操作的默认文件夹,并从中设置相对文件路径。如果您当前的目录是“aaa”,并且您在“bbb/ccc/ddd/database.db”打开一个文件或数据库,那么“bbb”目录必须在“aaa”中,否则程序将找不到该文件.

要在无需设置数据库位置等的情况下运行程序,您可能需要找到存储程序文件的目录并将其设置为当前目录。 这个 SO 答案表明你可以如何做到这一点。

于 2013-07-22T02:44:25.403 回答