为什么JNI中的GetMethodID总是返回0
已经使用了javap看过signature了
下面是C++代码
mid = env->GetMethodID(cls, "append","(Ljava/lang/String;I)Ljava/lang/String;");
mid=env->GetMethodID(cls,"HelloWord","()Ljava/lang/String;");
下面是javap的显示:
public test.MyTest(java.lang.String);
Signature: (Ljava/lang/String;)V
public java.lang.String HelloWord();
Signature: ()Ljava/lang/String;
public java.lang.String append(java.lang.String, int);
Signature: (Ljava/lang/String;I)Ljava/lang/String;
下面是java代码:
public String HelloWord() {
System.out.println("JAVA-CLASS:MyTest method:HelloWord:" +
helloword);
return helloword;
}
//test
public String append(String str, int i)
{
return str + i;
}