2013-03-23 48 views
0

有誰知道如何通過jni啓動equinox?我能夠使用JNI_CreateJavaVM調用jvm(& jvm,(void **)& env,& vm_args);我得到了org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar的主要類。現在如何將啓動器參數傳遞給Equinox啓動器?我試圖這樣做...我應該通過哪些方法的參數?我正在努力爲跑步做...。我得到一個返回碼13並且它沒有啓動......可能是什麼問題?equinox launcher jni

if(mainObject != NULL) { 
       runMethod = env->GetMethodID(mainClass, "run", "([Ljava/lang/String;)I"); 
       if(runMethod != NULL) { 
        methodArgs = createRunArgs(env, equinoxArg2s); 
        if(methodArgs != NULL) { 
         //results->launchResult = 0; 
         runresult = env->CallIntMethod(mainObject, runMethod, methodArgs); 
         env->DeleteLocalRef(methodArgs); 

回答

0

除了字符數組轉換,我正在做的一切都是正確的。 WCHAR到我創建的jobjectarray是通過一些垃圾字符,因此問題...所以經驗教訓:當心你傳遞的數據jni。如果可以,請仔細檢查eithersides ..