为什么我得到java.lang.UnsatisfiedLinkError: no jnisgfplib in java.library.path,即使Intellij显示没有编译错误,如何解决?

问题描述 投票:1回答:1

我在Intellij上设置了一个Java Application,到了代码编译和运行的程度。然而,当调用其中一个本地库时,我得到的是 java.lang.UnsatisfiedLinkError: no jnisgfplib in java.library.path,在行。

    lib = new JSGFPLib();

其中导入的是 JSGFPLib() 看起来 import SecuGen.FDxSDKPro.jni.*;

这是项目结构的样子,注意没有编译错误,我高亮显示的导入指的是左边的目录,其中包含了 JSGFPLib.

Intellij

为什么我会收到这个错误,我如何解决它?我在Mac上运行这个程序,它应该能够运行Linux Java Apps,因为Java是基于JVM的。

java macos intellij-idea import libraries
1个回答
0
投票

这个Java库有本地的依赖关系,这些依赖关系是操作系统特有的。

你需要这些依赖关系(本地库)在系统中是可用的。PATH 环境。

另一个选择是指定 -Djava.library.path=<dir> 中的财产 虚拟机选项 字段的RunDebug配置,其中 dir 是包含您的操作系统的本地库的目录。

IntelliJ IDEA也可以自动识别本地依赖项,当它们被添加到 模块依赖性 并将配置 -Djava.library.path 为你跑步时。

© www.soinside.com 2019 - 2024. All rights reserved.