java - 通过JNI向Java方法传递参数
问题描述
在Java中,在调用类中,有一个方法
public void test(int i)
{...
我想从 C++ 方法调用,所以我尝试了
jobject obj = env->AllocObject(cls);
jmethodID testID = env->GetMethodID(cls, "test", "(I)V");
if (testID)
{
const jint val = 15;
env->CallVoidMethod(obj, testID, val);
}
如果 test 不带参数并且 GetMethodID 中的签名是“()V”,这可以正常工作,但是对于 int(或任何其他类型),它会生成一个 PID 日志文件,抱怨 GetMethodID 中的内部 NoSuchMethodException。
我在这里想念什么?
谢谢
PS我放弃了,但不知道如何将问题标记为已关闭。