java.lang.UnsatisfiedLinkError: Native method not found 三种可能解决方案

解决so文件UnsatisfiedLinkError
AI助手已提取文章相关产品:

so文件编译生成后,运行时,有时候会遇到java.lang.UnsatisfiedLinkError: Native method not found问题,有可能是以下三种因素:

一、Jni方法头部大小写问题

在C++中,方法名:Java_com_XXX,而不是java_com_XXX。建议直接从生成的.h头文件直接复制方法名到C或者C++文件中。

二、C++文件问题

如果是C++文件(.cpp或者.cc),要使用extern "C" { } 把本地方法括进去。

三、往Jni方法中传值问题

如,调用native方法sendSomeThing(Object object),如果传入的object为null,有可能会报上面错误。


您可能感兴趣的与本文相关内容

E:\dinalShell\finalShell>java -jar finalshell.jar SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. Exception in thread "pool-5-thread-1" java.lang.UnsatisfiedLinkError: Unable to load library 'wpcap': 找不到指定的模块。 找不到指定的模块。 找不到指定的模块。 Native library (win32-x86-64/wpcap.dll) not found in resource path (finalshell.jar) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:323) at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:483) at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:425) at com.sun.jna.Function.getFunction(Function.java:102) at org.pcap4j.core.NativeMappings.<clinit>(NativeMappings.java:41) at org.pcap4j.core.Pcaps.findAllDevs(Pcaps.java:51) at xQ.x(xQ.java:96) at Do.run(Do.java:4) at fh.run(fh.java:4) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) Suppressed: java.lang.UnsatisfiedLinkError: 找不到指定的模块。 at com.sun.jna.Native.open(Native Method) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:211) ... 11 more Suppressed: java.lang.UnsatisfiedLinkError: 找不到指定的模块。 at com.sun.jna.Native.open(Native Method) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:224) ... 11 more Suppressed: java.lang.UnsatisfiedLinkError: 找不到指定的模块。 at com.sun.jna.Native.open(Native Method) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:284) ... 11 more Suppressed: java.io.IOException: Native library (win32-x8
最新发布
07-03
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值