我有以下问题:我尝试从 jar 加载文件,但我在外部有相同的文件位于相同的相对路径:“res/rtrconfig”作为 jar 中的文件。如何忽略外部文件并获取 jar 文件路径?我无法删除外部文件,因为我的代码的其他部分需要它。到目前为止我所拥有的:
ClassLoader loader = Thread.currentThread().getContextClassLoader();
URL url = loader.getResource(path);
//check if file is in jar or not
if (url == null) {
System.err.println("FATAL: Properties file not found.Stopping the server.");
System.exit(-1);
}
if ( !url.getProtocol().equals("jar")){
System.err.println("Properties found outside jars.Please delete " + url.getPath() + " and re-start the server");
System.exit(-1);
}
这部分代码检查文件是在 jar 中还是在路径中。我不知道如何配置 URL 以在路径中的文件之前查看 jar 中的文件。谢谢你的时间。