嗨,我制作了一个读取配置文件的小程序。该文件存储在实际的 jar 文件之外。实际上与 jarfile 处于同一级别。当我从实际目录(即 D:\test\java -jar name.jar argument0 argument1)中的命令行启动我的程序时,程序运行完美。
但是当我尝试从另一个位置运行程序时,实际目录我得到了 filenotfound 异常(即 D:\java -jar D:\test\name.jar argument0 argument1)。
基本功能似乎确实有效,我做错了什么?
根据要求的部分代码:
public LoadConfig() {
Properties properties = new Properties();
try {
// load the properties file
properties.load(new FileInputStream("ibantools.config.properties"));
} catch (IOException ex) {
ex.printStackTrace();
} // end catch
// get the actual values, if the file can't be read it will use the default values.
this.environment = properties.getProperty("application.environment","tst");
this.cbc = properties.getProperty("check.bankcode","true");
this.bankcodefile = properties.getProperty("check.bankcodefile","bankcodes.txt");
} // end loadconfig
该文件夹如下所示:
这有效:
这不会:
jar 不包含文本文件。