0
請考慮以下代碼。JVM不使用JNI從環境變量類路徑加載jar文件
JavaVM * jvm;
JNIEnv *env;
JavaVMInitArgs vm_args;
JavaVMOption options;
options.optionString ="-Djava.class.path=D:\\Work\\mybytes.jar";
vm_args.version = JNI_VERSION_1_6;
vm_args.nOptions = 1;
vm_args.options = &options;
vm_args.ignoreUnrecognized = 0;
JNI_GetDefaultJavaVMInitArgs(&vm_args);
int ret = JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args);
if(ret >=0)
{
jclass myBytesClass=env->FindClass("MyBytes");
jmethodID myByteConstructor=env->GetMethodID(myBytesClass,"<init>","()V");
myByteObj=env->NewObject(myBytesClass,myByteConstructor,NULL);
char* printBytes=env->GetMethodID(myBytesClass,"printBytes","([B)V");
}
我不想在代碼中使用此語句。
options.optionString =「 - Djava.class.path = D:\ Work \ mybytes.jar」;
我想將此jar文件添加到環境變量的classpath中。 但是當我將這個jar文件添加到classpath變量時,jvm不會加載這個jar文件。 我不知道爲什麼會發生這種情況?
你能正確地格式化你的代碼 - 縮進每行4個空格。 – tgdavies 2011-03-10 09:49:43