我需要从 C++ 代码中引发异常。引发的异常必须包含错误的文本和代码。 如此常见的形式:
ThrowNew(jclass clazz, const char *msg)
不适用。这就是为什么我想创建自己的 java 类实例:
public class MyException extends Exception
包含代码的另一个属性。但是 JNI 接口(interface)只有
的声明Throw(jthrowable obj)
将 MyException 实例转换为 jthrowable 是否正确?
最佳答案
对于 JVM,jthrowable 是 java.lang.Throwable 的一个实例,因此如果您在 JNI 代码中实例化异常并转换它,它应该可以工作。
关于java - JNI,在 jobect 和 jthrowable 之间转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2455668/