JNI到Java异常中的NoSuchMethodError
我得到这个错误: java.lang.NoSuchMethodError:没有非静态方法“Ljava/lang/AssertionError;(Ljava/lang/String;)V” 注:env为JNIEnv* 有什么想法吗?我看到断言错误存在。我只在Android棒棒糖上看到这个。在安卓4.4.2上似乎还不错 试试看JNI到Java异常中的NoSuchMethodError,java,android,exception,java-native-interface,nosuchmethoderror,Java,Android,Exception,Java Native Interface,Nosuchmethoderror,我得到这个错误: java.lang.NoSuchMethodError:没有非静态方法“Ljava/lang/AssertionError;(Ljava/lang/String;)V” 注:env为JNIEnv* 有什么想法吗?我看到断言错误存在。我只在Android棒棒糖上看到这个。在安卓4.4.2上似乎还不错 试试看 jclass clazz = env->FindClass( "java/lang/AssertionError" ); env->ThrowNew( claz
jclass clazz = env->FindClass( "java/lang/AssertionError" );
env->ThrowNew( clazz, "Test Assertion" );
我不知道exceptionClass从哪里来,但您没有在这里设置它。
java.lang.AssertionError
在错误消息中提到。所以不能使用依赖于此的ThrowNew(),
您必须自己构造异常并使用
Throw()。
谢谢您的建议。这是我在试图为这个问题编一个片段时犯的错误。然而,原来的问题仍然存在。
jclass clazz = env->FindClass( "java/lang/AssertionError" );
env->ThrowNew( clazz, "Test Assertion" );