一尘不染

Java VM EXCEPTION_ACCESS_VIOLATION的可能原因?

java

当Java VM因EXCEPTION_ACCESS_VIOLATION崩溃并生成hs_err_pidXXX.log文件时,这表明什么?错误本身基本上是空指针异常。它是否总是由JVM中的错误引起,还是有其他原因(如硬件故障或软件冲突)?

编辑:有一个本机组件,这是win32上的SWT应用程序。


阅读 476

收藏
2020-03-18

共1个答案

一尘不染

在大多数情况下,这是VM中的错误。但这可能是由任何本机代码(例如JNI调用)引起的。

hs_err_pidXXX.log文件应包含有关问题发生位置的一些信息。

您还可以检查文件中的“堆”部分。许多VM错误是由垃圾回收引起的(尤其是在较旧的VM中)。本部分应向您显示崩溃时垃圾是否在运行。此部分还显示堆的某些部分是否已填充(百分比数字)。

与其他情况相比,在内存不足的情况下,VM更有可能崩溃。

2020-03-18