使用exe4j将jar打包到exe时无法读取xml文件



最近我在使用exe4j将jar打包到exe中时遇到了一个问题。我的xml配置文件被放在exe的同一目录中,但在包完成后,exe将从临时文件夹中查找xml文件。以下是exe4j帮助文档中的说明

对于某些应用程序(尤其是GUI应用程序(,您可能希望将>工作目录更改为相对于可执行文件的特定目录,例如读取固定位置的配置文件。为此,请>选中"将工作目录更改为:"复选框,然后在相邻的文本字段中输入相对于可执行文件的目录>。要将当前目录>更改为可执行文件所在的同一目录,请输入一个>点。

运行exe时的错误:

[ERROR]在日志的初始化中,无法读取配置文件,file=/C:/Users/**/AppData/Local/Temp/e4jEA8.tmp_dir1543543191/sys_Log.xml

为什么程序不从exe的同级目录中查找此xml,以及如何从该目录中找到它?

如果使用"EXE中的JAR"模式,请使用

System.getPrpoerty("install4j.exeDir")

以获取可执行文件的父目录。

最新更新