首页 > 其他 > 详细

Java 用VS2010+Eclipse调试jni的native代码

时间:2014-02-23 14:41:47      阅读:438      评论:0      收藏:0      [点我收藏+]

   1.在eclipse中新建一个JNITest的工程,新建一个package  com.example.test。

bubuko.com,布布扣


   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

bubuko.com,布布扣

会在jni文件夹下生成 com_example_test_HelloWorld.h

bubuko.com,布布扣


   4.打开vs2010新建一个名为jniTest的win32控制台项目:

bubuko.com,布布扣


点击确定->下一步,选中dll,附加选项中选择空项目:

bubuko.com,布布扣


   5.将我们刚javah出来的h文件复制到jniTest工程目录下的jniTest文件夹下,在jniTest工程中添加头文件,现有项,在弹出来的对话框选择com_example_test_HelloWorld.h文件;

bubuko.com,布布扣



   6.将java jdk安装目录中的include\jni.h include\win32\jni_md.h两个文件复制到与com_example_test_HelloWorld.h同一目录下:

bubuko.com,布布扣


   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“导入:

bubuko.com,布布扣


选择File System指定到vs2010工程jniTest的Debug下,选择jniTest.dll:

bubuko.com,布布扣


单击finish,并编译,控制台输出如下:

bubuko.com,布布扣


本文出自 “Programming in XMU” 博客,请务必保留此出处http://liuxp0827.blog.51cto.com/5013343/1362081

Java 用VS2010+Eclipse调试jni的native代码

原文:http://liuxp0827.blog.51cto.com/5013343/1362081

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!