我在数千台 PC 上部署了一个 Java 应用程序,其中两三台计算机定期收到标题为“Microsoft Visual C++ 运行时库”的错误消息,其中包含“运行时错误!R6025 - 纯虚函数调用”文本。
错误本身的原因在互联网上有很好的记录,但问题是我没有直接使用任何 C++ 对象。Java 进程确实有一些 JNI 代码,用普通的老式非面向对象的 C 语言编写。据我了解,这个错误需要创建或销毁一些抽象对象才能导致它,而 C 代码不会做类似的事情。此外,在弹出此错误时,没有执行任何 JNI 代码。
任何人都对可能导致这种情况的原因有任何想法,或者至少如何获得某种堆栈跟踪,以了解发生这种情况时程序试图做什么?