VC6.0配置Java JNI动态库开发

2014-11-23 23:13:34 · 作者: · 浏览: 0

JAVA一个跑着在虚拟机上的软件开发语言,依靠虚拟机对字节码的解释,巧妙的实现跨平台。JAVA相对是安全的,因为封闭性。但对外界的调用则通过JNI动态库实现。今天我们讲解vc6.0配置如何开发JNI动态库。

1、需要下下载的资源1、jdk-7u45-windows-i586 2、vc6.0.

2、编写java Helloworld版本的类

public class HelloWorld {
	public native void displayHelloWorld();// java native方法申明


	static {
		System.loadLibrary("HelloWorldImpl");// 装入动态链接库,"HelloWorldImpl"是要装入的动态链接库名称。
	}


	public static void main(String[] args) {
		// TODO Auto-generated method stub
		HelloWorld helloWorld = new HelloWorld();
		helloWorld.displayHelloWorld();
	}
}

3、导出HelloWorld.h

d:\JNI>javac HelloWorld.java

导出内容如下

/* DO NOT EDIT THIS FILE - it is machine generated */
#include 
  
   
/* Header for class HelloWorld */

#ifndef _Included_HelloWorld
#define _Included_HelloWorld
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     HelloWorld
 * Method:    displayHelloWorld
 * Signature: ()V
 */
JNIEXPORT void JNICALL 
   Java_HelloWorld_displayHelloWorld
  (JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif

  

4、使用vc6.0 win32dll 工程添加头文件并编写本地实现文件

#include "HelloWord.h"
#include 
  
   
#include 
   
     /* * Class: HelloWorld * Method: displayHelloWorld * Signature: ()V */ JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld (JNIEnv *, jobject) { printf("Hello World!\n"); return; }
   
  

5、配置vc6.0的头文件包含目录和库文件包含目录。并将新添加的路径置顶。 \

\


最后一步编译



成功。