2
JNI dllでJava例外がスローされ、Javaメソッド定義でその例外が宣言されていない場合(は節をスローします)JNIで宣言されていない例外
コード:
private native void jniDoSomething(int someValue);
JNI dllでJava例外がスローされ、Javaメソッド定義でその例外が宣言されていない場合(は節をスローします)JNIで宣言されていない例外
コード:
private native void jniDoSomething(int someValue);
例外がとにかくスローされます。 これをチェックしました。
このような動作は、throws
キーワードがネイティブコードに影響しないためだと思います。ネイティブコードが適切な例外をスローしているかどうかをチェックする機能はなく、ヘッダファイルにも例外については言及していません。
同様の問題は、宣言されていない例外をスローすることを可能にするClass.newInstance()メソッドにも存在します。 – iirekm
はい、私の問題は何か違う、例外名が間違っていた、ネイティブ関数がクラスを見つけることができませんでしたし、全く例外をスローしました。 –