JNA 在 Mac OS 上找不到共享库

JNA can't find shared library on Mac OS

我正在 Java 中编写一个接口,它使用 "C" 中的底层库。 现在,当我尝试加载指定相对路径的库时,它找不到该库。 如果我给出绝对路径,它工作正常。

我想知道MAcOS上的相对路径和绝对路径有什么关系吗?因为相同的代码在 linux 上运行良好(即使我在上面指定了相对路径)。

请帮忙。

定义系统 属性 jna.debug_load(将 -Djna.debug_load=true 传递给您的 JVM)将导致控制台输出指示 JNA 在何处寻找您的本机库。

请记住,您需要将 jna.library.path 定义为 JNA 可以找到您的库的目录。该值应该是绝对路径。如果您使用 myapp/libs 之类的东西,那么您的操作将取决于进程的当前目录设置为什么。