HOWTO · Java

Java VM EXCEPTION_ACCESS_VIOLATION を解決する

このチュートリアルでは、Java で EXCEPTION_ACCESS_VIOLATION エラーを解決する方法を示します。

このページの内容

このチュートリアルでは、Java で EXCEPTION_ACCESS_VIOLATION エラーを解決する方法を示します。

Java VM EXCEPTION_ACCESS_VIOLATION を解決する

Windows で JVM を使用しているときに、Java 仮想マシンをクラッシュさせる EXCEPTION_ACCESS_VIOLATION エラーがスローされることがあります。 このエラーは基本的に NullPointerException です。

EXCEPTION_ACCESS_VIOLATION は次のようになります。

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffa50da9b2a, pid=8984, tid=11524
#
# JRE version: OpenJDK Runtime Environment (14.0.1+7) (build 14.0.1+7)
# Java VM: OpenJDK 64-Bit Server VM (14.0.1+7, mixed mode, sharing, tiered, compressed oops, g1 gc, windows-amd64)
# Problematic frame:
# V  [jvm.dll+0x349b2a]
#
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows.

ほとんどの場合、EXCEPTION_ACCESS_VIOLATION は Java 仮想マシンのエラーです。 ネイティブ コードによっても発生する場合があります。

このエラーの背後にある本当の理由を知るのに役立ついくつかの重要なポイントを次に示します。これにより、エラーを解決できます。

  1. このエラーが発生すると、エラーに関するすべての情報を含むログ ファイルが生成されます。 たとえば、Path ステートメントにエラーがある可能性があります。
  2. VM はメモリ不足でクラッシュする可能性が高くなります。 この低メモリは、eclipse.ini ファイルから増やすことができます。
  3. VM のバグもガベージ コレクションが原因です。 VM のクラッシュ時にガベージが実行されていた場合は、ヒープを調べることができます。

これらの 3つのポイントで、このエラーの解決策を見つけることができます。