java 调用 库文件错误查找方法
第一步首先找到 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 调用 库文件错误查找方法的更多相关文章
- linux下java调用.so文件的方法1: JNI
摘自http://blog.163.com/squall_smile/blog/static/6034984020129296931793/ https://my.oschina.net/simabe ...
- NDK 通过java调用so文件
首先我们来看so文件的来源 1. 自己写.c文件,然后生成so库 2. 引用别人的静态库,或者动态库来生成新的jni调用库. 我们先来看最简单的编写一个jni调用的so库,包含一个获取字符串的方法,通 ...
- Java调用.dll文件
因为项目的需求,要在JAVA项目中调用Windows的Dll(动态链接库)文件,之前用Jni调用过C写的Dll文件,比较麻烦,这里不多说,网上也有很多这方面的文档.在网上找到一个开源的组件JNativ ...
- C语言头文件、库文件的查找路径
在 程序设计中,文件包含是很有用的.一个大的程序可以分为多个模块,由多个程序员分别编程.有些公用的符号常量或宏定义等可单独组成一个文件,在其它文件的开头用包含命令包含该文件即可使用.这样,可避免在每个 ...
- vim 单文件中查找方法
1.vim 单文件中查找方法 正常模式下使用 / 或 ? 命令执行向后搜索或向前搜索 /love 从光标位置向前搜索关键词 love ?love 从光标位置向后搜索关键词 love 正常模式下 ...
- 2017.10.28 针对Java Web应用中错误异常处理方法的运用
针对Java Web应用中错误异常处理方法的运用 在javaweb中其异常都需要对Checked Exception之下的Exception进行继承,并且有选择地对发生的错误和异常进行处理.Java同 ...
- 基于bs4库的HTML查找方法
基于bs4库的HTML查找方法 find_all方法 <>.find_all(name,attrs,recursive,string,**kwargs) 返回一个列表类型,内部存储查找的结 ...
- JNA调用库文件
最近项目中要集成厂商的卡口摄像头,需要通过jna调用库函数接收卡口相机抓拍的过车数据.本文记录了Java调用C语言动态库(jna)的调用方式.回调函数.结构体等. JNA全称Java Native A ...
- Java读取Properties文件的六种方法
使用J2SE API读取Properties文件的六种方法 1.使用java.util.Properties类的load()方法示例: InputStream in = lnew BufferedIn ...
随机推荐
- [Swift通天遁地]二、表格表单-(2)创建右侧带有索引的UITableView(表单视图)
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- scrapy框架简介和基础应用(python爬虫)
一.什么是scrapy? scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍,所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,持久化等)的具有 ...
- 【LeetCode】-- 73. Set Matrix Zeroes
问题描述:将二维数组中值为0的元素,所在行或者列全set为0:https://leetcode.com/problems/set-matrix-zeroes/ 问题分析:题中要求用 constant ...
- [转]sed常用命令总结
转自:http://blog.chinaunix.net/uid-26963748-id-3249732.html 一.Sed简介 Sed:Stream Editor 流式编辑器 又称行编辑器,每次 ...
- EasyUI系列学习(一)-入门
1.什么是jQuery EasyUI jQueryEasyUI是一组基于jQuery的UI插件集合 2.jQueryEasyUI的特点 可以通过html标记来定义用户界面:支持扩展,可根据最近的需求扩 ...
- reactnative(2) - Navigator 使用案例
'use strict'; import React, { Component } from 'react'; import { AppRegistry, ScrollView, StyleSheet ...
- 【java并发容器】并发容器之CopyOnWriteArrayList
原文链接: http://ifeve.com/java-copy-on-write/ Copy-On-Write简称COW,是一种用于程序设计中的优化策略.其基本思路是,从一开始大家都在共享同一个内容 ...
- [转]【C/C++】Linux下使用system()函数一定要谨慎
曾经的曾经,被system()函数折磨过,之所以这样,是因为对system()函数了解不够深入.只是简单的知道用这个函数执行一个系统命令,这远远不够,它的返回值.它所执行命令的返回值以及命令执行失败原 ...
- C#入门经典 Chapter3 变量和表达式
3.1 C#基本语法 分号结束语句 花括号字符不需要附带分号 缩进 注释:/*....*/,//,/// 区分大小写 3.2 C#控制台应用程序的基本结构 namespace Chapter3 ...
- JS高级——逻辑中断
1.表达式1||表达式2:表达式1为真,返回表达式1:表达式1为假,返回表达式2 2.表达式1&&表达2:表达式1为真,返回表达式2:表达式1为假,返回表达式1