第一步首先找到 backtrace:keyword,然后找到都应的库文件 出错的地方 pc 0000088b  /system/lib/libNDK_04.so (SayHello+98)。

08-13 17:08:28.041 I/DEBUG   (  163): backtrace:

08-13 17:08:28.041 I/DEBUG   (  163):     #00  pc 00021fc0  /system/lib/libc.so (tgkill+12)

08-13 17:08:28.041 I/DEBUG   (  163):     #01  pc 00013081  /system/lib/libc.so (pthread_kill+48)

08-13 17:08:28.041 I/DEBUG   (  163):     #02  pc 00013295  /system/lib/libc.so (raise+10)

08-13 17:08:28.041 I/DEBUG   (  163):     #03  pc 00011fc9  /system/lib/libc.so

08-13 17:08:28.041 I/DEBUG   (  163):     #04  pc 00021874  /system/lib/libc.so (abort+4)

08-13 17:08:28.041 I/DEBUG   (  163):     #05  pc 0004b11b  /system/lib/libdvm.so (dvmAbort+78)

08-13 17:08:28.041 I/DEBUG   (  163):     #06  pc 0002d454  /system/lib/libdvm.so (IndirectRefTable::get(void*) const+252)

08-13 17:08:28.041 I/DEBUG   (  163):     #07  pc 0004f9b7  /system/lib/libdvm.so (dvmDecodeIndirectRef(Thread*, _jobject*)+30)

08-13 17:08:28.041 I/DEBUG   (  163):     #08  pc 00051b75  /system/lib/libdvm.so

08-13 17:08:28.041 I/DEBUG   (  163):     #09  pc 0000088b  /system/lib/libNDK_04.so (SayHello+98)

第二步

arm-linux-androideabi-addr2line -C  -f -e  out/target/product/ndp959/symbols/system/lib/libNDK_04.so  0000088b

第三步

得到:

/home/hlwang/tian/Tshark/ndp959/development/samples/NDK_04/jni/Provider.c:118

定位到库文件的那一行出错。

第四步

慢慢改吧。

一些细节能够參考:

http://doc.okbase.net/xyang81/archive/121689.html

http://blog.sina.com.cn/s/blog_702c2db50102vc2h.html

http://blog.csdn.net/lubeijing2008xu/article/details/37569809

http://blog.chinaunix.net/uid-58110-id-2733429.html

java 调用 库文件错误查找方法的更多相关文章

  1. linux下java调用.so文件的方法1: JNI

    摘自http://blog.163.com/squall_smile/blog/static/6034984020129296931793/ https://my.oschina.net/simabe ...

  2. NDK 通过java调用so文件

    首先我们来看so文件的来源 1. 自己写.c文件,然后生成so库 2. 引用别人的静态库,或者动态库来生成新的jni调用库. 我们先来看最简单的编写一个jni调用的so库,包含一个获取字符串的方法,通 ...

  3. Java调用.dll文件

    因为项目的需求,要在JAVA项目中调用Windows的Dll(动态链接库)文件,之前用Jni调用过C写的Dll文件,比较麻烦,这里不多说,网上也有很多这方面的文档.在网上找到一个开源的组件JNativ ...

  4. C语言头文件、库文件的查找路径

    在 程序设计中,文件包含是很有用的.一个大的程序可以分为多个模块,由多个程序员分别编程.有些公用的符号常量或宏定义等可单独组成一个文件,在其它文件的开头用包含命令包含该文件即可使用.这样,可避免在每个 ...

  5. vim 单文件中查找方法

    1.vim 单文件中查找方法 正常模式下使用 / 或 ? 命令执行向后搜索或向前搜索 /love   从光标位置向前搜索关键词 love ?love   从光标位置向后搜索关键词 love 正常模式下 ...

  6. 2017.10.28 针对Java Web应用中错误异常处理方法的运用

    针对Java Web应用中错误异常处理方法的运用 在javaweb中其异常都需要对Checked Exception之下的Exception进行继承,并且有选择地对发生的错误和异常进行处理.Java同 ...

  7. 基于bs4库的HTML查找方法

    基于bs4库的HTML查找方法 find_all方法 <>.find_all(name,attrs,recursive,string,**kwargs) 返回一个列表类型,内部存储查找的结 ...

  8. JNA调用库文件

    最近项目中要集成厂商的卡口摄像头,需要通过jna调用库函数接收卡口相机抓拍的过车数据.本文记录了Java调用C语言动态库(jna)的调用方式.回调函数.结构体等. JNA全称Java Native A ...

  9. Java读取Properties文件的六种方法

    使用J2SE API读取Properties文件的六种方法 1.使用java.util.Properties类的load()方法示例: InputStream in = lnew BufferedIn ...

随机推荐

  1. [Swift通天遁地]五、高级扩展-(6)对基本类型:Int、String、Array、Dictionary、Date的扩展

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  2. vscode常用的快捷键

    对于编程人员来说,记住一些常用的快捷键能够提高工作效率:我认为,对于编程人员来说,掌握一些常用的快捷键是非常有必要的! Ctrl + Shift + N 打开新的编辑器窗口 Ctrl + Shift ...

  3. 如何读取 Json 格式文件

    Json 源文件代码: [ { "Id": "0", "Name": "书籍", "Detail": ...

  4. ZOJ 3666 博弈 SG函数

    SG函数: 对于任意状态,定义SG(x)=mex(S),其中S是x的后继状态的SG函数值集合,mex(S)表示不再S内的最小非负整数 SG(X)=0当且仅当x为必败态. 解: 构造一个有向无环图(树) ...

  5. [ USACO 2018 OPEN ] Out of Sorts (Silver)

    \(\\\) \(Description\) 运行以下代码对一长为\(N\)的数列\(A\)排序,不保证数列元素互异: cnt = 0 sorted = false while (not sorted ...

  6. AIDL跨进程通信报Intent must be explicit

    在Android5.0机子上采用隐式启动来调试AIDL时,会出现Intent must be explicit的错误,原因是5.0的机子不允许使用隐式启动方式,解决的方法是:在启动intent时添加i ...

  7. suse 下的gcc安装

    在付出了一天的努力之后终于在win7系统上面硬盘安装suse操作系统成功,可是随之而来的问题居然是没有安装GCC,这对我来说是一个不小的打击,因为很多工作和工具安装需要通过GCC来编译,因此我只好求助 ...

  8. CSS——轮播图中的箭头

    注意事项: 1.定位中left权重比right高,top权重比bottom高 2.两个span标签嵌套在一个盒子中,将来显示隐藏只需要控制父盒子就行了 <!DOCTYPE html> &l ...

  9. 从JavaScript的单线程执行说起

    先看一段代码: 1 2 3 4 5 setTimeout(function(){     alert("a"); }, 0); while(1); alert("b&qu ...

  10. 脚本添加删除nginx配置中的内容

    [root@nodejs script]# more editnginx.sh #!/bin/bash # function back_check(){ # 备份配置和覆盖配置文件 cp -rf /e ...