我使用 JNI 设置一些字段如下:
JNIEXPORT void JNICALL Java_HelloJNI_sayHello(JNIEnv *env, jobject thisObj) {
jclass complexClass = (*env)->GetObjectClass(env, thisObj);
jfieldID fid = (*env)->GetFieldID(env, complexClass, "exampleVar", "I");
jint secondnumber = 30;
(*env)->SetIntField(env, complexClass, fid, secondnumber);
}
但是在设置 int 字段之后,当我从第一次调用的位置读回它时,该值不会被修改。我尝试提供两个 setter 以及公开“exampleVar”字段,但这似乎没有帮助。