Java JNI


JNIで使うC関数にパッケージ名を追加する



javahは、JNIのヘッダファイルを作成する際にパッケージ名までは面倒見てくれない。
手作業で追加する必要がある。




JNIEXPORT void JNICALL Java_PackageName_JniNative_nativeMethod

C側の関数は、javahで作成した***.hファイル内にある
"Java_(クラス名)_(メソッド名)"
という関数名になる。

しかし、.java側(Javaソース側)でpackageを指定した場合は
"Java_(パッケージ名)_(クラス名)_(メソッド名)"
という関数名にしなければならない。
パッケージ名中の「.(ピリオド)」は「_(アンスコ)」に変換すること。




[ 戻る ]