我需要在JNI中将ExceptionDescribe()的输出作为字符串获取,这样我就可以在文件中将其写入,而不是直接在命令行上编写。有什么方法或想法怎么做?
先谢谢,
萨米
答案 0 :(得分:5)
ExceptionOccurred是第一步,获取可以执行的消息和堆栈跟踪:
jboolean isCopy = false;
jmethodID toString = env->GetMethodID(env->FindClass("java/lang/Object"), "toString", "()Ljava/lang/String;");
jstring s = (jstring)(*env)->CallObjectMethod(exc, toString);
const char* utf = (*env)->GetStringUTFChars(s, &isCopy);
答案 1 :(得分:4)
您显然使用ExceptionOccured()
方法。
jthrowable exc;
exc = (*env)->ExceptionOccurred(env);