我正在尝试从JNI抛出异常,但是Activity崩溃时出现以下logcat错误:
WARNING: exception class 'Lthis/is/package/A$B;' missing constructor (msg='' kind=0
java.lang.RuntimeException: re-throw on exception class missing constructor
我的代码与此类似:
在JAVA中:
package this.is.package;
public class A {
public class B extends Exception {
public B () { super (); }
public B ( String s ) { super ( s ); }
public B ( Throwable t ) { super ( t ); }
public B ( String s, Throwable t ) { super ( s, t ); }
}
}
IN JNI:
(*env)->ThrowNew ( env, (*env)->FindClass ( "this/is/package/A$B" ), "" );
我该如何解决?
答案 0 :(得分:0)
当在另一个类中定义java类时,它的构造函数将自动附加有关的args,例如,父类实例。
要解决此问题,只需将"static"
标识符/关键字添加到您的B类:
e.g。
public static class B extends Exception