肯定结帖!!!#include <jni.h>
int main(int argc, char* argv[])
{ int res;
JavaVM *jvm;
JNIEnv *env;
JavaVMInitArgs vm_args;
JavaVMOption options[3];
vm_args.version=JNI_VERSION_1_4;
//这个字段必须设置为该值
/*设置初始化参数*/
options[0].optionString = "-Djava.compiler=NONE";
options[1].optionString = "-Djava.class.path=.";
options[2].optionString = "-verbose:jni";
//用于跟踪运行时的信息
/*版本号设置不能漏*/
vm_args.version = JNI_VERSION_1_4;
vm_args.nOptions = 3;
vm_args.options = options;
vm_args.ignoreUnrecognized = JNI_TRUE;
res =JNI_CreateJavaVM(&jvm,(void**)&env,&vm_args);
if (res < 0)
{
fprintf(stderr,"Can't create Java VM\n");
exit(1);
}
jvm->DestroyJavaVM();
fprintf(stdout,"Java VM destory.\n");
}
这是一段c++初始化jvm的代码,我用的是vc+6.0在project--setting--link里开始没设置jvm.lib时候报错找不到很多函数,后来我加进去了。程序编译没有错,可是运行的时候照不到jvm.dll,把它拷到项目下能编译过,运行也不报错,可是JNI_CreateJavaVM不成功,返回的总是负数,把jvm.dll拷贝过来不是办法,应该有标准的方法。哪位高人把以上问题指点一下?不胜感激!