当前位置: 首页 > 面试题库 >

试图从Java(JNA)使用DLL。无法加载库异常

雍焱
2023-03-14
问题内容

我有教程中的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 path

System.setProperty("java.library.path", myLibraryPath);

加载库:

System.loadLibrary(“ libraryWithoutDLLExtension”);

它对我有用,请尝试一下,然后告诉我是否对您有用。



 类似资料:
  • 我的单元测试在eclipse中工作,因为DLL的路径在jna中设置正确。图书馆路径 但是使用插件的mvn测试失败,出现此错误。 无法加载库'ehappi32':在资源路径中找不到本机库(win32-x86-64/ehlapi32.dll)

  • 我有64位Windows 7、IIS 7,并在IIS上安装了PHP。我启用了php_oci8。用于Oracle连接的dll,但出现以下错误: 我已经检查了php_oci8。dll存在于:“C:\Program Files(x86)\PHP\v5”中。5\ext\php\u oci8。dll' 我的php。见下: 我在http://www.oracle.com/technetwork/topics/

  • null 如果有人遇到了这个问题,并知道解决这个问题的任何事情,将不胜感激。

  • 问题内容: OSGi无法找到我的DLL文件,而且我似乎也找不到原因。 目前,我的包根目录中有DLL文件(),我也尝试将其放在目录中。 有关捆绑商品的清单看起来像这样: 然后在我的JNA界面中,执行loadLibrary(根据文档): 然后在另一个类中,我尝试使用JNA接口 我通过另一个捆绑软件提供了JNA(该捆绑软件输出com.sun.jna和上面导入的其他软件包),但也尝试过使用此处定义的捆绑软

  • 阻止它的唯一方法是注销和登录。不引发异常并加载dll。它可以工作几天,但之后又会坏掉。 有人见过这样的事情吗?有解决办法吗?

  • 我正在eclipse RCP项目中使用JNA。 我遵循片段风格。 xxx。dll直接位于a.b.c.d.win32中。win32。x86片段项目。 错误:线程“main”java中出现异常。lang.UnsatifiedLink错误:无法加载库“xxx”。dll”:在资源路径中找不到本机库(win32-x86/xxx.dll) 我需要一些帮助。