1. ホーム
  2. java

VMの初期化中にエラーが発生しました java/lang/NoClassDefFoundError: java/lang/Object

2022-02-13 06:07:26

docコマンドでjava/javac/java -versionを実行したときに発生しました。


VMの初期化中にエラーが発生しました java/lang/NoClassDefFoundError: java/lang/Object


またはeclipseがこの理由で開きません。

以下の3つの理由をまとめました。

<スパン

1: javaの環境変数が誤って設定されている。環境変数が正しいかどうか、特にクラスパスを確認する。

一般的に(javaのみの設定の場合)、環境変数の値である

JAVA_HOME ======== "あなたの jdk インストール先ディレクトリ; 例: "C:\Program FilesJava

<スパン Path ========= "%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin"

CLASS_PATH ========== "%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar"


2: 環境変数の設定に問題がある場合、jdk のインストールディレクトリ(例. C:\Program Files\Java\jdk1.8.0_121 ) の下にある tools.jar と jrelib の下にある rt.jar を探して、それらが存在するかどうかを確認し、おそらく rt.pack と tools.pack も見つける。

この時点で、対応するファイルを rt.jar と tools.jar に解凍します。これは、bin 内の unpack200 ツールを使って行います。

#cd /usr/java/j2sdk1.4.2/lib
#unpack tools.pack tools.jar
#cd ... /jre/lib
#... /... /unpack rt.pack rt.jar

3:存在しない jrelib の tools.jar または rt.jar の下にある lib、または lib または jrelib以下のファイル(40ファイル)がないので、この時点では他からコピーしてくればよい。

tools.jarやrt.jarをコピーした後にjavaコマンドを実行すると文字化けする場合、以下の可能性があります。 under jrelib ファイルが見つからない場合は、よく探すか、または jrelib をインストールすると直ります。