我目前在一个项目中同时使用C++和Java,我希望能够发送一个包含在C++中的对象到我的Java接口,以便通过它来修改它一个GUI,然后用C++发回修改。通过JNI返回一个C++类到Java
到目前为止,我一直通过JNI接口向Java返回int或boolean。这一次我必须通过界面发送一个对象。我已经在C++和Java中提供了类似的类定义。 我想知道如何创建对象,以便我可以在Java中使用它。
在C++中,我有:
JNIEXPORT MyObject JNICALL Java_ca_X_Y_Z_C_1getMyObject(JNIEnv* env, jclass, jint number);
此功能将被Java,以获得从C++侧对象被调用(的对象包含在一个单,方便)。
在Java年底,我做一个简单的调用这个方法,
MyObject anObject = C_getMyObject(3);
应该还给我新创建的对象。
当我执行实际调用时,Java当前返回一个UnsatisfiedLinkError。哪里不对?