繁体   English   中英

UnsatisifedLinkedError:无法在jar文件中找到存根库

[英]UnsatisifedLinkedError : Could not locate stub library in jar file

我正在尝试使用此jnr-jffi库。 它似乎对jffi有依赖性,因此我也建立了该依赖性并将其包含在我的libs文件夹中。

我的加载本机代码的代码如下:

MATH_LIB = LibraryLoader.create(MathLib.class).load("math");

MATH_LIB.Multiply(1, 2);

我得到以下错误:

java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: could not locate stub library in jar file.  Tried [jni/Darwin/libjffi-1.2.dylib, /jni/Darwin/libjffi-1.2.dylib]

对于它的价值,我确实包含了一个文件夹jni ,该文件夹似乎包含一堆用于各种平台的本机库。

如何使用该库继续加载本机代码。

请注意,在启动项目时,我尝试添加各种路径,并且还将库添加到计算机上的不同位置,但均未成功。

那意味着我需要弄清楚如何进一步调试它? 欢迎任何建议。

使用JNR时,最简单的方法是使用Maven Maven将自动解决所有需要的依赖关系。

您可以将其添加到pom.xml

<dependency>
     <groupId>com.github.jnr</groupId>
     <artifactId>jnr-ffi</artifactId>
     <version>2.0.9</version>
</dependency>

在此处找到最新版本。

您需要文件的特定于平台的版本:libjffi-1.2.dylib参考问题,并尝试为您的平台版本找到一个相关的jar,其中将包含上述库文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM