in src/main/java/pemja/utils/CommonUtils.java [85:109]
private void loadLibrary(String libraryPath, String packageName) {
try {
System.load(libraryPath);
} catch (UnsatisfiedLinkError error) {
try {
Field field = ClassLoader.class.getDeclaredField("loadedLibraryNames");
field.setAccessible(true);
Object libsObject = field.get(null);
if (libsObject instanceof Vector) {
Vector<String> libs = (Vector<String>) libsObject;
synchronized (libsObject) {
libs.removeIf(element -> element.contains(packageName));
}
} else {
Set<String> libs = (Set<String>) libsObject;
synchronized (libsObject) {
libs.removeIf(element -> element.contains(packageName));
}
}
System.load(libraryPath);
} catch (Throwable throwable) {
throw new RuntimeException(throwable);
}
}
}