首页 > 解决方案 > JavaFX 如何部署应用程序并使我的资源在代码中可用?

问题描述

我编写了一个 JavaFX 应用程序来使用类似 Flashcard 的程序学习德语。原来我的同学也想要这个,但我不知道如何部署它。

我有一个存储一些德语单词的 sqlite 数据库,我需要读/写访问权限。我已经尝试对路径进行硬编码,但显然不好。我试图通过以下行加载 sqlite 文件并将其部署为可运行的 jar,但我无法在其上写入。

"jdbc:sqlite::resource:Vokabeln.sqlite"

假设我不想制作远程 Web 应用程序,我应该如何使这个文件可用于我的代码,并且与平台无关?我应该制作一个安装程序,以便我问用户路径是什么?我也不知道如何编写安装程序应用程序。我用谷歌搜索并没有找到类似的东西。

标签: javajavafxdeployment

解决方案


您将希望将您的应用程序与数据库一起作为 Jar 外部的文件分发,否则您将无法对其进行写访问。

如果数据库文件与 Jar 文件位于同一目录/文件夹中,您应该能够使用 JDBC URL 连接到它,如下所示:jdbc:sqlite:sample.db

将您的应用程序作为 Zip 文件分发很好,但如果您不能指望最终用户安装 Java 等,可以使用创建安装程序的程序,甚至是跨平台的程序,例如IzPackInstall4J


推荐阅读