[英]Why is java (32-bit) JDK installer not copying rt.jar file to JRE directory? (Windows 2008 R2 SP1)
The system is using Windows Server 2008 R2 SP1, Tomcat 5.5.28, and Java SE 6 Update 20 for both JDK and JRE. 对于JDK和JRE,系统使用Windows Server 2008 R2 SP1,Tomcat 5.5.28和Java SE 6 Update 20。
I updated the system to the latest JDK update, Java SE 6 Update 27, and let it install using defaults; 我将系统更新到最新的JDK更新,Java SE 6 Update 27,并使用默认值进行安装; it created a new directory, jdk1.6.0_27, and overwrote the jre directory. 它创建了一个新目录jdk1.6.0_27,并覆盖了jre目录。 It asked to restart and then I noticed Tomcat would not start. 它要求重新启动然后我注意到Tomcat无法启动。 I ran the java -version from the jre directory and it outputted 我从jre目录运行java -version并输出
Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object 初始化VM java / lang / NoClassDefFoundError期间发生错误:java / lang / Object
I discovered the directory was missing the rt.jar file; 我发现该目录缺少rt.jar文件; I pasted it from the jdk1.6.0_27/jre/bin directory and java -version worked and Tomcat started. 我从jdk1.6.0_27 / jre / bin目录粘贴它,java -version工作,Tomcat启动。 My question is why is this error occurring in the first place??? 我的问题是为什么这个错误首先发生? Is it the Java installer? 它是Java安装程序吗?
I ran the Java Automatic update feature (which only updates JRE, not JDK) and it worked without a hiccup. 我运行了Java自动更新功能(仅更新JRE,而不是JDK),并且它没有打嗝。 So, why is the Java installer from Oracle.com not updating the JRE directory properly? 那么,为什么Oracle.com的Java安装程序没有正确更新JRE目录?
Thank you in advance. 先感谢您。
I think that's the case all Windows installers have this obligatory
phrase: 我认为所有Windows安装程序都有这个obligatory
短语:
Please close all running programs before you continue with installation 请在继续安装之前关闭所有正在运行的程序
I think something was holding the old rt.jar and installer has a bug that cannot cope with this condition. 我认为有些东西拿着旧的rt.jar,安装程序有一个无法应对这种情况的错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.