Java JNI
JNIで使うC関数にパッケージ名を追加する
javahは、JNIのヘッダファイルを作成する際にパッケージ名までは面倒見てくれない。
手作業で追加する必要がある。
JNIEXPORT void JNICALL Java_PackageName_JniNative_nativeMethod
C側の関数は、javahで作成した***.hファイル内にある
"Java_(クラス名)_(メソッド名)"
という関数名になる。
しかし、.java側(Javaソース側)でpackageを指定した場合は
"Java_(パッケージ名)_(クラス名)_(メソッド名)"
という関数名にしなければならない。
パッケージ名中の「.(ピリオド)」は「_(アンスコ)」に変換すること。
|