jni程序开发简单示例和说明(eclipse + Microsoft Visual Studio 2010)

来源:互联网 发布:淘宝买吃的怎么样 编辑:程序博客网 时间:2024/06/07 03:40

Jni程序开发的一般操作步骤如下:

l 编写java中的调用类

l 用javah生成c/c++原生函数的头文件

c/c++中调用需要的其他函数功能,实现原生函数(原则上可以调用任何资源)

l 将项目依赖的所有原生库和资源加入到java项目的java.library.path

l 生成java程序

l 发布java应用和dll库


以下的所有工程项目代码和文档:

http://download.csdn.net/detail/chenchendf/8338173

 

1. java:

eclipse工程代码:testJni.zip

 

TestHello.java: 

 

 

package com.jni;

public class TestHello {

 static{

  System.loadLibrary("TestHello"); //已经在环境变量中添加dll文件的路径:E:\workspace\testJni\dll

 }

 

 public static native void hello(String msg);

 

 /**

  * @param args

  */

 public static void main(String[] args) {

  // TODO Auto-generated method stub

  hello("Hello, Kimmi!");

 

 }

}

注意:

1) javah -classpath E:/workspace/testJni/bin TestHello  

(1) 使用classpath参数指定编译后的class文件的路径,否则会提示找不到类

(2) TestHello  类要使用全路径,即前面要添加其包名,此处因为是放在默认包中,所以没有添加。

2). dll文件所在目录必须在系统环境变量中添加,否则无法读取;

3). 使用eclipse测试时,生成dll之后,需要重启eclipse

 

2. c++

 

Microsoft Visual Studio 2010工程代码: TestHello_VC.zip

 

注意:

1) 使用过程中需要用到jni.h和 jni_md.h,在java安装目录的include目录下,需要copy到当前工程目录下

2)visual studio2010需要修改两个地方,否则编译会出错:

“项目”-》“属性”-》“配置属性”:

 

3. 一切正常后,在eclipse中运行,Run as->Java Application: 结果:

 

 

参考: 

http://blog.csdn.net/skywalker256/article/details/4677644

http://www.iteye.com/topic/304594#814127


1 0