1.4のJVMが起動しなくなった
SunJDK1.3,1.4,1.5,1.6をインストールしていて、メインはJava1.4を使っています。で、今日Eclipseからあるプログラムをlaunchしてみたら、何かエラーが。コマンドで試してみたら、
$ java1.4 -version Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object count = 6974, total = 9415 $
というメッセージが出ました。これって何だったか忘れましたが、コアライブラリ(rt.jar)が壊れているのかな、と思って、アーカイブツールでViewモードで開いてみたら、java/lang/Object.classが無いです。試しに1.5のrt.jarを開いてみたら、やっぱりjava/lang/Object.classが無い。1.5はちゃんと起動します。最初から無いんですね、知りませんでした。
で、たぶんこれが壊れているのだと思ったので、JDKインストール時に同時にインストールしている同バージョンJREのrt.jar(サイズ違う)に置き換えたら、動きました。何か問題があるかもしれないけど、放っておきます。