C++ JNI_CreateJavaVM() 호출시 예외가 발생하는 이유는?

조회수 2740회

비주얼 스튜디오 2015를 사용하고 있고, jar 라이브러리를 C++ 코드에서 사용하기 위해 JNI API를 사용 중입니다.

  1. 테스트겸 예제코드를 실행하는데 JNI_CreateJavaVM() 메소드를 호출할 시 예외( 0xC0000005)가 발생합니다. 그 원인을 짐작할 수 있을까요?
#include<jni.h>
...
int main() {

    JavaVM *jvm;
    JNIEnv *env;
    JavaVMInitArgs vm_args;
    JavaVMOption *options = new JavaVMOption[1];
    jint result = 0;

    options[0].optionString = "-Djava.class.path=E:/libraries/MorphemeAnalyzer/org.snu.ids.ha.jar;";
    vm_args.version = JNI_VERSION_1_6;
    vm_args.nOptions = 1;
    vm_args.options = options;
    vm_args.ignoreUnrecognized = false;

    result = JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args); //예외 발생
    delete options;

    try
    {
        ...
    }

    jvm->DestroyJavaVM();
}

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)