У меня есть следующая структура jar для весенней загрузки
- bootstrap.yml
- org
- META-INF
-- MANIFEST.MF
-- Maven
-- org.account.core
-- account-service
-- pom.properties
-- pom.xml
Теперь я хочу прочитать мой pom-файл из класса Util в том же банке.Приведенный ниже код всегда возвращает пустое значение.
public static String findFilePathInsideJar(String matchingFile) throws IOException {
String path = null;
File jarFile = new File(FileUtils.class.getProtectionDomain().getCodeSource().getLocation().getPath());
if (jarFile.isFile()) {
JarFile jar = new JarFile(jarFile);
Enumeration<JarEntry> entries = jar.entries();
while (entries.hasMoreElements()) {
String name = entries.nextElement().getName();
if (name.endsWith(matchingFile)) {
path = name;
break;
}
}
jar.close();
}
return path;
}
, и я вызываю утилиту следующим образом:
String path = findFilePathInsideJar("pom.xml");
путь всегда равен нулю.