`
qkgf91qkgf
  • 浏览: 13347 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

VS2005和Eclipse中调试JNI的方法

 
阅读更多

VS2005和Eclipse中调试JNI的方法
2010年11月16日
  1、用Eclipse编写JNI的JAVA程序,项目名称为DemoJNI,路径为E:\workspace\DemoJNI,JNI包设为 demo.jar,其中jni.demo.TestJNI是包含main函数的入口类。假设demo.jar要用到db.jar。 
  2、编写JNI DLL,生成动态库名为DemoJNI.dll。假设DemoJNI.dll需要动态库ipc.dll的支持。 
  3、在VS2005的项目属性中,设定如下: 
  命令      :  E:\jdk1.6.0_07\bin\java.exe(JDK路径) 
  工作路经  :  E:\jdk1.6.0_07\bin 
  命令行参数:  -classpath "db.jar;demo.jar" jni.demo.TestJNI 
  基本的思路跟在命令行中执行Java程序类似。 
  4、将demo.jar、db.jar、DemoJNI.dll和ipc.dll都拷贝到E:\jdk1.6.0_07\bin下面。 
  建议不要拷贝到system32目录下,仅对Java虚拟机起作用,便于调试。 
  5、在VS2005中设定断点,即可跟踪调试。 
  6、Eclipse中调试JNI,注意虚拟机路径是否为E:\jdk1.6.0_07\bin\javaw.exe,否则需要将 DemoJNI.dll和ipc.dll拷贝E:\workspace\DemoJNI目录下。  背景: 
  C写的库,通过JNI本地化,生成接口相似的jar 
  操作步骤: 
  C写的库,可以通过简单的调用C库的接口的小程序Trace进去,也可以通过导入jar,作成java的小程序Trace,因为Java接口比较友好,容易实现各种用例,所以往往是用Java作成case进行Trace的 
  VS2005打开C库的工程,在工程属性页Debugging选项中进行以下设置: 
  1.Command项设置成java.exe 
  *windows下因为在环境变量PATH中已经有了java.exe,所以可以直接设置,否则要写绝对路径 
  2.Command Arguments中设置java执行参数,我喜欢使用-cp选项,把使用的jar包加载进来,把java工程目录下的class目录如bin加载进来 
  3.Working Directory则是java的工程目录 
  4.F5就可以在VS2005中跟踪了 
分享到:
评论

相关推荐

    使用eclipse单步调试jni代码 (方法2)

    本文档是自己一边实际操作一边记录完成,每一关键步骤都有截图与详细...方法2的缺点是首次配置复杂,优点是不必每次调试都重新在目标机安装app,并可以在目标程序运行过程中随时开始调试。文档完成时间是2014年10月。

    使用eclipse单步调试jni代码(方法1)

    本文档是自己一边实际操作一边记录完成,每一关键步骤都有截图与详细说明,本是自己的记录也是拿出来与大家...方法1的特点是配置简单,缺点是每次调试都要重新在目标机安装app,并重新调试。文档完成时间是2014年10月。

    jni调试 c层在eclipse中输出信息

    jni 调试在c语言层调用java层的函数输出c中的信息,便于调试

    jni 在c中打印信息到Eclipse中

    可以在jni的c语言中打印信息到Eclipse的logcat中,这样在Eclipse中就可以直接看C语言中打印的信息,方便调试。

    VS2015 Android JNI 静态库 动态库 APK 本地调试DEMO

    VS2015 Android JNI 静态库 动态库 APK 本地调试DEMO 自己摸索出来的,10分绝对不高.摆脱Android Studio摆脱Eclipse.摆脱VisualGDB 祝君工作愉悦

    详解如何使用Android Studio 进行NDK开发和调试

    尽管Android Studio已经越来越流行了,但很多人还是习惯于Eclipse或源码环境下开发JNI应用。个人认为使用Android Studio作NDK开发是必然趋势,所以本文将简单介绍...使用这个工具可以很方便的编写和调试JNI的代码。 ND

    Eclipse+CDT+GDB调试android NDK程序

    Eclipse+CDT+GDB调试android NDK程序

    jni中用多线程调用java代码

    本项目主要是实现了在jni中用多线程调用java对象。代码调试通过。直接导入到eclipse即可运行

    安卓串口Socket通讯USB驱动jni相关-安卓串口调试工具APK和源码经本人修改过的eclipse导入就能用.rar

    安卓串口调试 工具 APK 和源码,经本人 修改过的,eclipse 导入就能用.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

    《Android C++高级编程——使用NDK》_源码.zip

    主要内容:● 使用JNI将原生代码连接到Java中● 使用SWIG自动生成JNI代码● 使用POSIX线程实现多线程应用● 使用POSIX套接字实现网络应用● 使用logging、GDB和Eclipse调试器进行调试● 使用Valgrind分析内存● 使用...

    Android C++高级编程: 使用NDK

    Android是移动电话市场的主要角色而且其市场份额正在持续增长。... 用logging、GDB和Eclipse调试器调试原生代码。  用Valgrind分析内存问题。  用GProf测试应用性能。  用SIMD/NEON优化原生代码。

    Android C++高级编程使用NDK

    《移动开发经典丛书:Android C++高级编程:使用NDK》提供了移植、开发以及利用... 用logging、GDB和Eclipse调试器调试原生代码。  用Valgrind分析内存问题。  用GProf测试应用性能。  用SIMD/NEON优化原生代码。

    pro-android-c-w-ndk-master.tar

    《移动开发经典丛书:Android C++高级编程:使用NDK》提供了移植、开发以及利用... 用logging、GDB和Eclipse调试器调试原生代码。  用Valgrind分析内存问题。  用GProf测试应用性能。  用SIMD/NEON优化原生代码。

    android 输入法源码 eclipse可以编译

    本apk 是在安卓2.2SDK 编译.可以运行在大部分机器上. ...本人花费大量时间 移植到 window上jave 环境 Eclipse 上编译, 而且JNI 都被修改了,提供源码,可以自己编译. window下开发调试非常方便. 附带编译截图.

    pro_android_cpp_with_the_ndk.pdf

    3.4.6 域和方法描述符 3.5 异常处理 3.5.1 捕获异常 3.5.2 抛出异常 3.6 局部和全局引用 3.6.1 局部引用 3.6.2 全局引用 3.6.3 弱全局引用 3.7 线程 3.7.1 同步 3.7.2 原生线程 3.8 小结 第4章 使用SWIG自动生成JNI...

    2010年谢彦的android笔记

    3.3.1 android中使用JNI 70 3.3.2 安装使用NDK 72 3.3.3 在源码中将库打进apk 73 3.3.4 简单的C库调试方法 75 3.4 典型应用 76 3.4.1 语音合成 76 3.4.2 语音识别简介 79 3.4.3 语音识别方法一:使用intent调用语音...

    NDK编译clapack, clapack.7z

    原生lapack是用fortran语言写... 5、如果编译出现(87)错误,则分别在jni目录下的android.mk和application.mk文件中分别加上 LOCAL_SHORT_COMMANDS := true 和 APP_SHORT_COMMANDS := true即可。 最后,本人亲测可行。

    cplus-libparser:使用Eclipse CDT Parser的C ++源元数据提取器

    cplus-libparser C / C ++中用于元数据提取(有关类,方法,变量的信息)的库。 该库使用Eclipse解析器(独立),并提取最相关的信息(主要用于自动完成)。 主要优点是它完全是用Java编写的,不需要本机代码(如JNI...

    android培训资料

    公司培训android的教程资料,包括android源代码结构分析、android fromwork详细分析、JNI/NDK、android开发常用的linux命令、eclipse调试技巧和快捷键、Git和repo

    Android C++高级编程:使用NDK_Onur Cinar, 于红PDF电子书下载 带书签目录 完整版

    3.4.6 域和方法描述符 72 3.5 异常处理 75 3.5.1 捕获异常 75 3.5.2 抛出异常 75 3.6 局部和全局引用 76 3.6.1 局部引用 76 3.6.2 全局引用 76 3.6.3 弱全局引用 77 3.7 线程 78 3.7.1 同步 78 3.7.2 原生...

Global site tag (gtag.js) - Google Analytics