JNI

最簡單的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加載使用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章