Package io.netty.util.internal
Class NativeLibraryUtil
java.lang.Object
io.netty.util.internal.NativeLibraryUtil
A Utility to Call the
System.load(String)
or System.loadLibrary(String)
.
Because the System.load(String)
and System.loadLibrary(String)
are both
CallerSensitive, it will load the native library into its caller's ClassLoader
.
In OSGi environment, we need this helper to delegate the calling to System.load(String)
and it should be as simple as possible. It will be injected into the native library's
ClassLoader when it is undefined. And therefore, when the defined new helper is invoked,
the native library would be loaded into the native library's ClassLoader, not the
caller's ClassLoader.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
loadLibrary
(String libName, boolean absolute) Delegate the calling toSystem.load(String)
orSystem.loadLibrary(String)
.
-
Constructor Details
-
NativeLibraryUtil
private NativeLibraryUtil()
-
-
Method Details
-
loadLibrary
Delegate the calling toSystem.load(String)
orSystem.loadLibrary(String)
.- Parameters:
libName
- - The native library path or nameabsolute
- - Whether the native library will be loaded by path or by name
-