感谢百度文库、及朋友们的贡献,在此把个人学习的第一步贴上。
1、编写java类。
class HelloWorld
{
public native void displayHelloWorld();
static {
System.loadLibrary("hello");
}
public static void main(String[] args) {
new HelloWorld().displayHelloWorld();
}
}
-------------------------------------------
javac HelloWorld.java 编译后,再使用 javah HelloWorld 再次编译生成 HelloWorld.h文件
2、使用VS2010 创建win32项目注意 1步骤中的hello即为需要调用的hello.dll动态库文件
创建win32项目名称要选择hello -- 之后会生成hello.dll 当然也会生成hello.cpp等文件
3、在以上基础上创建cpp,如HelloWorldImp.cpp 去实现HelloWorld.h中方法
HelloWorldImp.cpp:
#include "stdafx.h"
#include "jni.h"
#include "HelloWorld.h"
JNIEXPORT void JNICALL
Java_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj)
{
printf("Hello world!");
return;
}
--------------------------------------------------------------
%JAVA_HOME%\include下的头文件,需要引入,可以接copy到 VS2010安装目录(C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include)
下。
编译生成hell.dll文件并把它copy到 HelloWorld.java同一级目下
java HelloWorld 执行。
控制头输入 Hello World!