summaryrefslogtreecommitdiffstats
path: root/src/java
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2023-01-23 10:23:15 +0100
committerSven Gothel <[email protected]>2023-01-23 10:23:15 +0100
commite6cab620406492567e2194a3fac90ca76950272d (patch)
treea9b165612b5ed868edcff526f52931683375389e /src/java
parent55e0d96bddd01042fb0955d7a3864ac7879b612f (diff)
JNILibLoaderBase.loadLibraryInternal(): Produce own detailed exception if lib couldn't be loaded (avoid showing misleading orig exception)
.. and detail some debug output. Both, own exception and debug output expose NativeLibrary.getSystemEnvLibraryPaths()
Diffstat (limited to 'src/java')
-rw-r--r--src/java/com/jogamp/common/jvm/JNILibLoaderBase.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/java/com/jogamp/common/jvm/JNILibLoaderBase.java b/src/java/com/jogamp/common/jvm/JNILibLoaderBase.java
index 7859d2e..cccea1a 100644
--- a/src/java/com/jogamp/common/jvm/JNILibLoaderBase.java
+++ b/src/java/com/jogamp/common/jvm/JNILibLoaderBase.java
@@ -605,14 +605,14 @@ public class JNILibLoaderBase {
mode = 2;
} else {
if(DEBUG) {
- System.err.println("JNILibLoaderBase: System.loadLibrary("+libraryName+") - mode 3");
+ System.err.println("JNILibLoaderBase: System.loadLibrary("+libraryName+") - mode 3: SystemEnvLibraryPaths: "+NativeLibrary.getSystemEnvLibraryPaths());
}
try {
System.loadLibrary(libraryName);
mode = 3;
} catch (final UnsatisfiedLinkError ex1) {
if(DEBUG) {
- System.err.println("ERROR (retry w/ enumLibPath) - "+ex1.getMessage());
+ System.err.println("ERROR mode 3 - "+ex1.getMessage());
}
final List<String> possiblePaths = NativeLibrary.enumerateLibraryPaths(libraryName, libraryName, libraryName, cl);
// Iterate down these and see which one if any we can actually find.
@@ -629,7 +629,10 @@ public class JNILibLoaderBase {
System.err.println("n/a - "+ex2.getMessage());
}
if(!iter.hasNext()) {
- throw ex2;
+ // Avoid misleading final exception, use our own
+ throw new UnsatisfiedLinkError("Couldn't load library '"+libraryName+
+ "' generically including "+NativeLibrary.getSystemEnvLibraryPaths()+ // mode 3
+ ", nor as "+possiblePaths); // mode 4
}
}
}