Quando si inizializza JDK1_1InitArgs
utilizzando il compilatore JDK1_1InitArgs vm_args
mi dà errori. Ho bisogno di questa variabile inizializzata per utilizzare la funzione JNI_CreateJavaVM
.errori durante il tentativo di inizializzare vm_args
JavaVM *jvm;
JNIEnv *env;
jmethodID mid;
JDK1_1InitArgs vm_args; // Line 47
vm_args.version = 0x00010001; // Line 48
JNI_GetDefaultJavaVMInitArgs(&vm_args);
vm_args.classpath = "C:/Program Files/Java/jdk1.7.0/lib;.;";
JNI_CreateJavaVM(&jvm, &env, &vm_args);
env = (*jvm)->AttachCurrentThread(jvm,&env,NULL);
jclass cls = (*env)->GetObjectClass(env,Obj);
mid = (*env)->GetMethodID(env,cls,"callBack","(Ljava/lang/String;)V");
(*env)->CallVoidMethodA(env,Obj,mid,(*env)->NewStringUTF(env,"1B"));
Errori:
Perché ottengo questi errori? Come posso liberarmi di loro?
Tale struttura potrebbe essere stata rimossa dal file di intestazione. Vedi [questo bug report qui.] (Http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5031222) – JoeFish
@JoeFish qual è l'alternativa? –
Non lo so, motivo per cui non l'ho postato come risposta. Sono sicuro che un po 'più di ricerca su Google produrrebbe comunque la soluzione. – JoeFish