不受支持的 JNI 版本 0xFFFFFFFF
是否有人在使用 Java 代码中的本机 dll 时遇到该错误?它是JNI库的版本吗?还是未解决的依赖关系?
has anyone encountered that error while using native dll from java code? Is it the version of the JNI library? or an unresolved dependency?
错误:
Caused by: java.lang.UnsatisfiedLinkError: unsupported JNI version 0xFFFFFFFF required by C:\jnwasapi.dll
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
这是我正在使用的一个新库,其他库工作正常.
This is a new library I'm using, the others working fine.
jnwasapi.dll
的 JNI_OnLoad
函数可能返回 -1,这不是预期的价值.JNI_OnLoad
函数必须返回一个带有已知常量的 jint
,例如 JNI_VERSION_1_6
.JNI_OnLoad
函数在初始化失败时返回 -1 是很常见的.例如,它可能试图加载一个找不到的类.
The jnwasapi.dll
's JNI_OnLoad
function is probably returning -1, which is not an expected value. The JNI_OnLoad
function must return a jint
with a known constant, such as JNI_VERSION_1_6
. It's common for JNI_OnLoad
functions to return -1 if they fail to initialize. For example, it may have tried to load a class which couldn't be found.