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的头文件包含目录和库文件包含目录。并将新添加的路径置顶。

最后一步编译

成功。