JniExport завершается неудачно с объявлением строки - PullRequest
0 голосов
/ 26 сентября 2019

Почему, когда я хочу использовать строку внутри моей функции Jniexport, dll становится неисправной?

Если я закомментирую использование этой строки, как в коде ниже, все работает, и я получаю«Моя строка» от вызова этой функции в Java.

Но как только я включу эту строку в "std :: string test;"Я могу построить dll, но в Java после вызова System.loadLibrary ("jniBridge") получить сообщение

java.lang.UnsatisfiedLinkError: \ path \ to \ dll \ jniBridge.dll: динамическийОшибка инициализации библиотеки ссылок (DLL)

jniBridge.cpp:

#pragma once
#include "jni.h"
#include "jniBridge.h"

#include "string"

/*
 * Class:     jniBridge
 * Method:    instantiateAI
 * Signature: ()Ljava/lang/String;
 */
JNIEXPORT jstring JNICALL Java_jniBridge_instantiateAI
  (JNIEnv *env, jclass clazz) {
    // std::string test; // fails with this line.
    return env->NewStringUTF("My String");
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...