从批处理文件启动 .jar 时如何正确引用目录?
我正在尝试从 .bat 启动 jar 文件。我的代码做的第一件事就是打开并从文件中读取。我像这样引用文件:
final ArrayList<EmailAccount> emailList = FileIO.getListOfAccountsFromFile(".\\EmailList\\list.txt");
如果批处理文件与我的 jar 位于同一目录中,则一切正常。但是,如果我将批处理文件放在其他地方并尝试运行它(就像我打算让它工作一样),程序认为我正在尝试引用
".bat directory"\EmailList\list.txt
代替
".jar directory"\EmailList\list.txt
并提出了一个 fileNotFoundException。
有什么方法可以从不同的目录运行我的批处理文件,同时正确引用与 jar 相关的文件,而无需在 jar 的文件路径中进行硬编码?