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中跟踪了 

猜你喜欢

转载自qkgf91qkgf.iteye.com/blog/1364685