我目前在一個項目中同時使用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。哪裏不對?