试图从Java(JNA)使用DLL。无法加载库异常
我有教程中的NetBeans项目,这会导致异常:
线程“ main” java.lang.UnsatisfiedLinkError: Unable to load library
“
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 pathSystem.setProperty("java.library.path", myLibraryPath);
加载库:
System.loadLibrary(“ libraryWithoutDLLExtension”);
它对我有用,请尝试一下,然后告诉我是否对您有用。
以上是 试图从Java(JNA)使用DLL。无法加载库异常 的全部内容, 来源链接: utcz.com/qa/404142.html