最簡單的Java調用C/C++代碼的步驟:
1.在Java類中聲明一個聲明爲native的方法。
2.使用Javah命令生成包含native方法聲明的C/C++頭文件。
3.按照生成的C/C++頭文件來寫C/C++源文件。
4.將C/C++源文件編譯成動態連接庫(DLL或者SO)。
5.將動態連接庫(DLL或者SO)加入PATH環境變量中。
6.Java類中加載動態連接庫(DLL或者SO),然後調用聲明的native方法。
最簡單的Java調用C/C++代碼的核心步驟示例
1,Java類文件:
public class TestNative
{
public native void sayHello();
public static void main(String[] args)
{
System.loadLibrary(“nativeCode”);
TestNative testNative = new TestNative();
testNative.sayHello();
}
}
2,用Java的javah工具生成頭文件,主要內容如下:
JNIEXPORT void JNICALL Java_TestNativesayHello(JNIEnv *, jobject);
3,C/C++實現文件(jni.h和jni_md.h) nativeCode.cpp
JNIEXPORT void JNICALL Java_TestNativesayHello(JNIEnv *, jobject)
{
cout<<“Hello JNI!”<<endl;
}
4,編譯生成動態庫文件(nativeCode.dll或者nativeCode.so),並加入Path中供Java加載使用