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

来源:互联网 发布:18亿亩耕地红线知乎 编辑:程序博客网 时间:2024/06/17 02:55

http://blog.csdn.net/lilu_leo/article/details/10950047

       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,有可能会报上面错误。


阅读全文
0 0