新建工程JNI,并建立SayHellotoCPP.java文件
package com.chnic.jni;
public class SayHellotoCPP {
public SayHellotoCPP(){
}
public native void sayHello(String name);
}
在控制台中cd到\src\com\chnic\jni
目录下输入命令javac
SayHellotoCPP.java
cd到src目录下输入命令javah -classpath .
com.chnic.jni.SayHellotoCPP,即可输出com_chnic_jni_SayHellotoCPP.h
文件
新建win32 DLL 空项目工程,将生成的头文件放到工程目录下,新建.cpp文件,输入如下代码:
# include <iostream>
# include "com_chnic_jni_SayHellotoCPP.h"
JNIEXPORT void JNICALL Java_com_chnic_jni_SayHellotoCPP_sayHello
(JNIEnv* env, jobject obj, jstring name)
{
const char* pname = env->GetStringUTFChars(name, NULL);
std::cout << "Hello, " << pname << std::endl;
}
<jni.h>在%JAVA_HOME%/include目录下。