UnsatisfiedLinkError:无法加载库' win64':在资源路径中找不到本机库(win32-x86-64 / win64.dll)

时间:2017-05-02 14:09:55

标签: java windows java-native-interface jna unsatisfiedlinkerror

使用jna-4.4.0.jar

访问Windows 7 Native库时,我的异常低于Exception

添加-Djna.debug_load=true -Djna.debug_load.jna=true参数后,我的输出低于UnsatisfiedLinkError。

Trying (via loadLibrary) jnidispatch
Looking in classpath from sun.misc.Launcher$AppClassLoader@73d16e93 for /com/sun/jna/win32-x86-64/jnidispatch.dll
Found library resource at jar:file:/C:/Users/vishwajit/workspace/Practice/lib/jna-4.4.0.jar!/com/sun/jna/win32-x86-64/jnidispatch.dll
Trying C:\Temp\jna--1067518124\jna4907966697518063795.dll
Found jnidispatch at C:\Temp\jna--1067518124\jna4907966697518063795.dll
Looking for library 'win64'
Adding paths from jna.library.path: null
Trying win64.dll
Adding system paths: []
Trying win64.dll
Looking for lib- prefix
Trying libwin64.dll
Looking in classpath from sun.misc.Launcher$AppClassLoader@73d16e93 for win64
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'win64': Native library (win32-x86-64/win64.dll) not found in resource path ([file:/C:/Users/vishwajit/workspace/Practice/bin/, file:/C:/Users/vishwajit/workspace/Practice/lib/gson-2.7.jar, file:/C:/Users/vishwajit/workspace/Practice/lib/jna-platform-4.4.0.jar, file:/C:/Users/vishwajit/workspace/Practice/lib/jna-4.4.0.jar])
        at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:303)
        at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:427)
        at com.sun.jna.Library$Handler.<init>(Library.java:179)
        at com.sun.jna.Native.loadLibrary(Native.java:569)
        at download.wallpaper.WallpaperDownloader$User32.<clinit>(WallpaperDownloader.java:47)
        at download.wallpaper.WallpaperDownloader.main(WallpaperDownloader.java:43)

并且,我正在尝试使用以下代码加载Windows库来设置壁纸。

public static interface User32 extends Library{
    User32 INSTANCE = (User32) Native.loadLibrary("win64", User32.class, W32APIOptions.DEFAULT_OPTIONS);
    boolean SystemParametersInfo(int one, int two, String s, int three);
}

现在,我无法找到win32-x86-64 / win64.dll的库路径。它所在的位置和路径是什么?

0 个答案:

没有答案