JNA provides Java programs easy access to native shared libraries (DLLs
on Windows) without writing anything but Java code—no JNI or native
code is required. This functionality is comparable to Windows'
Platform/Invoke and Python's ctypes. Access is dynamic at runtime without
JNA allows you to call directly into native functions using natural
Java method invocation. The Java call looks just like it does in native
code. Most calls require no special handling or configuration; no
boilerplate or generated code is required.
The JNA library uses a small native library stub to dynamically invoke
native code. The developer uses a Java interface to describe functions and
structures in the target native library. This makes it quite easy to take
advantage of native platform features without incurring the high overhead
of configuring and building JNI code for multiple platforms.
While some attention is paid to performance, correctness and ease of
use take priority.
This plugin makes the JNA jar file available as a dependency to other
plugins to use.