系统正在为JDK和JRE使用Windows Server 2008 R2 SP1,Tomcat 5.5.28和Java SE 6 Update 20.
我将系统更新到最新的JDK更新,Java SE 6 Update 27,并使用默认值进行安装;它创建了一个新目录jdk1.6.0_27,并覆盖了jre目录。它要求重新启动然后我注意到Tomcat无法启动。我从jre目录运行java -version并输出
在VM初始化期间发生错误 java / lang / NoClassDefFoundError:java / lang / Object
我发现该目录缺少 rt.jar 文件;我从jdk1.6.0_27 / jre / bin目录粘贴它,java -version工作,Tomcat启动。我的问题是为什么这个错误首先发生?它是Java安装程序吗?
我运行了Java自动更新功能(仅更新JRE,而不是JDK),并且它没有打嗝。那么,为什么Oracle.com的Java安装程序没有正确更新JRE目录呢?
提前谢谢。
答案 0 :(得分:2)
我认为所有Windows安装程序都有这个obligatory
短语:
请在继续安装之前关闭所有正在运行的程序
我认为有些东西拿着旧的rt.jar,安装程序有一个无法应对这种情况的错误。