美文网首页
jni UnsatisfiedLinkError: No imp

jni UnsatisfiedLinkError: No imp

作者: DON_1007 | 来源:发表于2020-04-14 16:26 被阅读0次

    jni出现No implementation found for...是因为在so运行的时候,找不到与头文件对应的方法实现,记录下我碰到的出现这种问题的原因以及处理方式:

    一、java包路径与jni头文件中的签名包路径不一致

    这点是jni的规则,一般jni头文件是通过命令生成,不建议手动修改。

    二、c或cpp文件未引入 (include) jni头文件

    这种是属于粗心大意引起的问题

    三、未加载so 或 so加载失败 或 加载的so与java代码不匹配

    1、在so加载失败的时候,及时抛出异常或警告信息
    2、若新增java native方法,然而加载成功的so仍然是旧版本so,调用也会抛出异常。针对这种情况,在so中增加读取版本号方法,确保加载成功的so版本号与java代码版本号一致

    相关文章

      网友评论

          本文标题:jni UnsatisfiedLinkError: No imp

          本文链接:https://www.haomeiwen.com/subject/dwstvhtx.html