如何在使用exe4j从.jar创建.exe时包含库

问题描述 投票:1回答:1

我编写了一个Java FX工具,它连接到.accdb数据库并从中创建了一个可执行的JAR文件,该文件非常有效。在JAR文件的同一文件夹中,我有几个JAR库,我需要这些库才能连接到我的数据库。


现在我想用exe4j从可执行的JAR创建一个可执行文件(.exe)。为此,在“Java调用”步骤中的“高级选项”下,我添加了一个包含这些必需库的文件夹作为“库目录”。

我现在运行生成的.exe和我的应用程序打开,但当我尝试连接到我的数据库(通过单击我的应用程序中的按钮)它不起作用,我得到这个例外:

java.lang.ClassNotFoundException:net.ucanaccess.jdbc.UcanaccessDriver

显然,它未能包含我所需的库。


除了我的实际可执行JAR之外,我究竟如何在exe4j中继续包含多个JAR库?

java jar exe classnotfoundexception exe4j
1个回答
0
投票

默认情况下,JAR文件将从文件系统添加到类路径,并具有向导中指定的相同位置,因此可执行文件不能单独运行。

exe4j具有“EXE中的JAR”模式,其中类路径中的所有JAR文件都打包到可执行文件中。资源文件无法以这种方式打包。如果您需要JAR文件以外的资源(如DLL),则必须使用常规模式并将可执行文件与所有支持文件一起发送。

© www.soinside.com 2019 - 2024. All rights reserved.