跳转至

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 宏,且你使用的版本要大于或等于你指定的版本