当Java VM与EXCEPTION_ACCESS_VIOLATION崩溃并生成hs_err_pidXXX.log文件时,这表示什么?错误本身基本上是一个空指针异常.它总是由JVM中的错误引起,还是有其他原因,如硬件故障或软件冲突?
编辑:有一个本机组件,这是win32上的SWT应用程序.
大多数情况下,这是VM中的错误.但它可能是由任何本机代码(例如JNI调用)引起的.
hs_err_pidXXX.log文件应包含有关问题发生位置的一些信息.
您还可以检查文件中的"堆"部分.许多VM错误都是由垃圾收集引起的(特别是在较旧的VM中).此部分应显示崩溃时垃圾是否正在运行.此部分还显示了堆的某些部分是否已填充(百分比数字).
VM在内存不足的情况下也更容易崩溃.
找到答案!
我有同样的错误,并注意到提供pid日志文件内容的其他人正在运行64位Windows.就像我.在结束日志文件中,它包含PATH语句.在那里我可以看到C:\ Windows\SysWOW64错误地列在:%SystemRoot%\ system32之前.一旦我纠正它,异常就消失了.