com.sun.jna
public class NativeLibrary extends Object
Library Search Paths A search for a given library will scan the following locations:
jna.library.path
User-customizable path
jna.platform.library.path
Platform-specific paths
Field Summary | |
---|---|
int | callFlags |
Map | options |
Method Summary | |
---|---|
static void | addSearchPath(String libraryName, String path)
Add a path to search for the specified library, ahead of any system
paths.
|
void | dispose() |
protected void | finalize() Close the library when it is no longer referenced. |
File | getFile()
Returns the file on disk corresponding to this NativeLibrary instance.
|
Function | getFunction(String functionName)
Create a new Function that is linked with a native
function that follows the NativeLibrary's calling convention.
|
Function | getFunction(String name, Method method)
Create a new Function that is linked with a native
function that follows the NativeLibrary's calling convention.
|
Function | getFunction(String functionName, int callFlags)
Create a new @{link Function} that is linked with a native
function that follows a given calling flags.
|
Pointer | getGlobalVariableAddress(String symbolName) Look up the given global variable within this library. |
static NativeLibrary | getInstance(String libraryName)
Returns an instance of NativeLibrary for the specified name.
|
static NativeLibrary | getInstance(String libraryName, Map options)
Returns an instance of NativeLibrary for the specified name.
|
String | getName() Returns the simple name of this library. |
Map | getOptions() Returns this native library instance's options. |
static NativeLibrary | getProcess()
Returns an instance of NativeLibrary which refers to the current
process. |
static NativeLibrary | getProcess(Map options)
Returns an instance of NativeLibrary which refers to the current
process. |
long | getSymbolAddress(String name)
Used by the Function class to locate a symbol |
static String | matchLibrary(String libName, List searchPath)
matchLibrary() is very Linux specific. |
static double | parseVersion(String ver) |
String | toString() |
Parameters: libraryName The name of the library to use the path for path The path to use when trying to load the library
The allocated instance represents a pointer to the named native function from the library.
Parameters: functionName Name of the native function to be linked with
Throws: UnsatisfiedLinkError if the function is not found
The allocated instance represents a pointer to the named native function from the library.
Parameters: name Name of the native function to be linked with method Method to which the native function is to be mapped
Throws: UnsatisfiedLinkError if the function is not found
Parameters: functionName Name of the native function to be linked with callFlags Flags affecting the function invocation
Throws: UnsatisfiedLinkError if the function is not found
Parameters: symbolName
Returns: Pointer representing the global variable address
Throws: UnsatisfiedLinkError if the symbol is not found
More than one name may map to the same NativeLibrary instance; only a single instance will be provided for any given unique file path.
Parameters: libraryName The library name to load. This can be short form (e.g. "c"), an explicit version (e.g. "libc.so.6"), or the full path to the library (e.g. "/lib/libc.so.6").
More than one name may map to the same NativeLibrary instance; only a single instance will be provided for any given unique file path.
Parameters: libraryName The library name to load. This can be short form (e.g. "c"), an explicit version (e.g. "libc.so.6"), or the full path to the library (e.g. "/lib/libc.so.6"). options native library options for the given library (see Library).
Throws: UnsatisfiedLinkError if the symbol can't be found