C++ 调 java 填坑¶
1 使用 JNI_CreateJavaVM 出现错误¶
- 原因:可能仅仅只把 jvm.dll 放入工程中但使用 JNI 还需要 jre 中其它东西。
- 解决方法:直接使用 LoadLibrary 加载 jre 安装的路径下 jvm.dll 吗,而不是拷贝到当前项目。
2 使用 JNI_CreateJavaVM 返回 0xFFFFFFFD¶
- 原因:此错误是指 JNI 版本号错误
- 解决方法:在给 JavaVMInitArgs 变量设置 version 值时,使用系统提供的 JNI_VERSION_1_1,JNI_VERSION_1_2,JNI_VERSION_1_4,JNI_VERSION_1_6 宏,且你使用的版本要大于或等于你指定的版本