我在 Windows 机器上观察到一种奇怪的行为。我有一个使用 Java JRE 1.6u29 的服务器应用程序 (jboss 6.1.0)。
机器重启导致 JRE 内的 rt.jar 文件被删除。
结果,这会损坏 JVM 并导致服务器应用程序无法启动(重启后)。
关于如何追踪该问题有什么帮助吗?
答案1
当我们卸载我们的应用程序时,我们也卸载了 java(我们的安装程序是 installanywhere)。由于 IA 依赖于 java,因此它不会在卸载 java 时删除 rt.jar,而是标记在重新启动时要删除的文件。因此,当重新启动虚拟机时,此文件(rt.jar)将被删除。
当我再次安装该应用程序时,它也会安装 java,并且一切正常,但是当我重新启动虚拟机时,由于 rt.jar 被删除,java 被损坏。因此,卸载我们的应用程序后重新启动虚拟机解决了这个问题。