跳过JNI_CreateJavaVM在VS2017

时间:2018-04-27 14:01:58

标签: visual-studio-2017 java-native-interface

我目前正致力于将VS2013的多线程服务器应用程序迁移到VS2017。端口很简单,但是我在使用JNI时遇到了一个奇怪的问题。

我们动态加载jvm.dll,然后为JNI_CreateJavaVM执行GetProcAddress;这段代码在VS2013中运行稳健,但在VS2017中,我无法在没有报告null ptr异常的情况下跳过对create JVM函数的调用。

多么奇怪的是,如果我接着继续下一个断点,我发现我创建JVM的调用已成功,然后我可以继续调用JNI函数来创建类等。

任何人都得到了补救措施 - 这是一个众所周知的问题吗?

1 个答案:

答案 0 :(得分:0)

在VS2017转到

  

例外设置 - (Ctrl + Alt + E)

并在Win32例外中勾选0xc0000005 Access violation

JVM在启动检查操作系统功能时会生成上述异常。所以你可以忽略它并继续前进。