美文网首页
JNI崩溃原因排错流程

JNI崩溃原因排错流程

作者: 草丛螳螂 | 来源:发表于2017-12-12 19:51 被阅读24次

jni错误一般会在hs_err_pid*****.log记录错误的原因,假设该进程为6789,那么出错的文件为hs_err_pid6789.log,这个文件在程序运行的当前目录中。

如果是缺少包,就会在该文件中提示。

如果是包错误,可以看到该文件的调用栈

如果是提示找不到函数,比如提示libAbcTest.so找不到函数funcA,那么可以用

readelf -a libAbcTest.so grep funcA

查看是不是有该函数。

如果找不到该文件,可以在程序中写一个足够长的sleep,让该程序在出错前停住。

用ps -aux查看该程序的进程号,假设该程序的进程号为12345

使用cat /proc/12345/maps 查看该程序的调用栈。

排错过程与上节相同。

相关文章

网友评论

      本文标题:JNI崩溃原因排错流程

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