Java 用VS2010+Eclipse调试jni的native代码 推荐
2014-02-22 15:52
309 查看
1.在eclipse中新建一个JNITest的工程,新建一个package com.example.test。
2.在com.example.test下新建一个类HelloWorld,代码如下:
3.运行cmd,定位到JNITest根目录下,mkdir新建jni文件夹,
运行命令 javah -classpath bin -d jni com.example.test.HelloWorld
会在jni文件夹下生成 com_example_test_HelloWorld.h
4.打开vs2010新建一个名为jniTest的win32控制台项目:
点击确定->下一步,选中dll,附加选项中选择空项目:
5.将我们刚javah出来的h文件复制到jniTest工程目录下的jniTest文件夹下,在jniTest工程中添加头文件,现有项,在弹出来的对话框选择com_example_test_HelloWorld.h文件;
6.将java jdk安装目录中的include\jni.h include\win32\jni_md.h两个文件复制到与com_example_test_HelloWorld.h同一目录下:
7.在vs2010工程jniTest新建一个C++源文件,命名为hello.cpp,代码如下:
将com_example_test_HelloWorld.h内的#include <jni.h>改为#include "jni.h",编译之,若成功在Debug下生成jniTest.dll。
8.回到Eclipse中,右击工程,选择”Import“导入:
选择File System指定到vs2010工程jniTest的Debug下,选择jniTest.dll:
单击finish,并编译,控制台输出如下:
2.在com.example.test下新建一个类HelloWorld,代码如下:
package com.example.test; public class HelloWorld { public native void displayHelloWorld(); static { System.loadLibrary("jniTest"); } public static void main(String[] args) { System.err.println("TEST:"); new HelloWorld().displayHelloWorld(); } }
3.运行cmd,定位到JNITest根目录下,mkdir新建jni文件夹,
运行命令 javah -classpath bin -d jni com.example.test.HelloWorld
会在jni文件夹下生成 com_example_test_HelloWorld.h
4.打开vs2010新建一个名为jniTest的win32控制台项目:
点击确定->下一步,选中dll,附加选项中选择空项目:
5.将我们刚javah出来的h文件复制到jniTest工程目录下的jniTest文件夹下,在jniTest工程中添加头文件,现有项,在弹出来的对话框选择com_example_test_HelloWorld.h文件;
6.将java jdk安装目录中的include\jni.h include\win32\jni_md.h两个文件复制到与com_example_test_HelloWorld.h同一目录下:
7.在vs2010工程jniTest新建一个C++源文件,命名为hello.cpp,代码如下:
#include "com_example_test_HelloWorld.h" #include <stdio.h> JNIEXPORT void JNICALL Java_com_example_test_HelloWorld_displayHelloWorld (JNIEnv * env, jobject obj) { printf("Hello World,ponpon\n"); }
将com_example_test_HelloWorld.h内的#include <jni.h>改为#include "jni.h",编译之,若成功在Debug下生成jniTest.dll。
8.回到Eclipse中,右击工程,选择”Import“导入:
选择File System指定到vs2010工程jniTest的Debug下,选择jniTest.dll:
单击finish,并编译,控制台输出如下:
相关文章推荐
- Linux环境下android平台调试native代码, 从java debug 到C++ (NDK DEBUG)
- 用VC + Eclipse调试jni的native代码
- JNI的调试_从java代码连调到C/C++
- Linux环境下android平台调试native代码, 从java debug 到C++ (NDK DEBUG)
- 【Android】Android Studio 1.5+ 中混合调试Native和Java代码
- Android Studio 1.5+ 中混合调试Native和Java代码
- 【Android】Android Studio 1.5+ 中混合调试Native和Java代码
- android java到native(c/c++)代码联合调试
- JNI-Native代码访问Java代码(一)
- Linux环境下android平台调试native代码, 从java debug 到C++ (NDK DEBUG)
- 如何使用Eclipse和GDB对JNI代码进行调试(JAVA和C)
- 用VC + Eclipse调试jni的native代码
- 用VC + Eclipse调试jni的native代码
- Android Studio 1.5+ 中调试Native和Java代码
- Cocos2d-x中通过JNI进行C++调用Java代码
- [JNI] java 多线程调用native 方法
- JNI(Java Native Interface)技术在嵌入式软件开发中的应用
- java native方法及JNI实例
- Java代码转为C#的5款工具推荐
- Android中JNI高级应用 - 本地C代码中创建Java对象及本地JNI对象的保存