В настоящее время я использую как C++, так и Java в проекте, и я хотел бы иметь возможность отправлять объект, который содержится в C++, в мой интерфейс Java, чтобы изменить его через графический интерфейс, а затем отправить модификацию обратно в С++.
До сих пор я ничего не возвращал, int или boolean в Java через интерфейс JNI. На этот раз я должен отправить объект через интерфейс. Я сделал аналогичное определение класса доступным как в C++, так и в Java. Я хотел бы знать, как мне создать объект, чтобы использовать его в Java.
В С++ у меня есть:
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, когда я делаю фактический вызов. Что случилось?