jni没有';在内部类java.lang.NoSuchMethodError中找不到方法

jni没有';在内部类java.lang.NoSuchMethodError中找不到方法,java,c++,java-native-interface,inner-classes,nosuchmethoderror,Java,C++,Java Native Interface,Inner Classes,Nosuchmethoderror,对于如何使用JNI访问嵌套类中的方法,我有一个问题 public class AccountUI { public native ExtrasWageUI[] getExtrasWages(); public class ExtrasWageUI { public ExtrasWageUI() { mCppHandle = callConstructorN(); } public ExtrasWageUI

对于如何使用JNI访问嵌套类中的方法,我有一个问题

public class AccountUI {
    public native ExtrasWageUI[] getExtrasWages();

      public class ExtrasWageUI {
        public ExtrasWageUI() {
          mCppHandle = callConstructorN();
        }

        public ExtrasWageUI(long cppHandle) {
          mCppHandle = cppHandle;
        }

      private native long callConstructorN();
   }
  }
我将在
accountUI.getExtrasWages()获取错误信息

java.lang.NoSuchMethodError:类中没有名称为“”签名为“”(J)V'的方法 Lde/projects/customer/../myProject/domain/AccountUI$ExtrasWageUI

JNI找不到该方法。
有人知道如何访问内部类中的方法吗?

您必须在签名中添加外部类:

environment->GetMethodID(resultClassAssistantUI, "<init>", "(L.../domain/AccountUI;J)V");
environment->GetMethodID(resultClassAssistantUI,”,“(L../domain/AccountUI;J)V”);
更正。它确实找到了类。它没有找到方法。在编写JNI方法签名时,不要自己编写。使用
javap-s
的输出。从来没有错。