我正在用Java编写一个接口,它使用了" C"中的库。 现在,当我尝试加载指定相对路径的库时,它找不到库。 如果我给出绝对路径,它就可以正常工作。
我想知道,是否与MAc OS上的相对和绝对路径有关。因为相同的代码在linux上运行良好(即使我在其上指定了相对路径)。
请帮助。
答案 0 :(得分:1)
定义系统属性jna.debug_load
(将-Djna.debug_load=true
传递给JVM)将导致控制台输出指示JNA在哪里寻找您的本机库。
请记住,您需要将jna.library.path
定义为JNA可以找到您的库的目录。该值应该是绝对路径。如果您使用的是myapp/libs
之类的内容,那么您的操作将取决于进程当前目录的设置。