我有来自 tutorial 的 NetBeans 项目导致异常:
线程“主”中的异常 java.lang.UnsatisfiedLinkError:无法加载库
'simpleDLL':找不到指定的模块。
试图将 simpleDLL.dll 放入项目库中,将文件复制到 system32 文件夹中,但没有成功。
最佳答案
我在加载 DLL 时遇到了完全相同的问题,我是这样解决的:
正如 Christian Kuetbach 所说,检查您使用的 simpleDLL 是否与您的处理器架构兼容,32 位 DLL 无法在 64 位机器上运行,64 位 DLL 也无法运行不能在 32 位机器上工作。
如果 DLL 兼容,则问题可能出在您的 java 库路径中。我将 DLL 放入
user.dir
目录,然后使用以下代码:将 Java 库路径设置为
user.dir
或者您想要的其他路径:String myLibraryPath = System.getProperty("user.dir");//or another absolute or relative path System.setProperty("java.library.path", myLibraryPath);
加载库:
System.loadLibrary("libraryWithoutDLLExtension");
它对我有用,试试看,然后告诉我它是否对你有用。
关于java - 尝试使用来自 Java (JNA) 的 DLL。无法加载库异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14286647/