在RedHat Linux上安裝jdk出現了一個莫名的錯誤
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
辛苦google了一個小時,終於找到了解決方案
首先要確認的是環境變量的設置是否正確
相信大家都是很細心的,這方面如果有錯誤也會很容易發現
然而還有一個隱蔽的地方也會產生上述的錯誤
就是lib和jre/lib文件夾中的rt和tools是否是打包後的形式
如果發現rt.pack 和 tools.pack 那麼多半問題就出在這裡
解決方法也很簡單,只要將相應文件解壓成rt.jar 和 tools.jar
可以使用bin裡面的unpack200工具
如:unpack200 rt.pack rt.jar
解壓後java -version應該就沒有問題了~~
ps:在SUSE Linux上也同樣可以處理這樣的問題。