当前位置: 首页 > 面试题库 >

有什么办法“重新启动” JVM?

蒋啸
2023-03-14
问题内容

有什么方法可以重新启动JVM?如in中,实际上不退出,而是关闭并重新加载所有类,然后从顶部运行main?


问题答案:

最好的选择可能是在一个循环中运行java解释器,然后退出。例如:

#!/bin/sh
while true
do
    java MainClass
done

如果您希望完全重新引导或关闭,可以测试退出状态:

#!/bin/sh
STATUS=0
while [ $STATUS -eq 0 ]
do
    java MainClass
    STATUS=$?
done

在Java程序中,可以使用System.exit(0)指示要“重新引导”,而可以使用System.exit(1)指示要停止并保持停止。



 类似资料:
  • 问题内容: 据说Java在性能方面比python快10倍。我也从基准测试中看到了这一点。但是真正使Java崩溃的是JVM的启动时间。 这是我做的测试: 相同的文件,Docx和Python中的12 KB ms XLSX嵌入式文件快25倍!WTH! Java需要2.055秒。 我知道这都是由于启动时间造成的,但是我需要通过脚本调用它来解析一些我不想重新发明python的文档。 但是对于解析10k +文

  • 问题内容: 我知道不可能重新启动使用的Java Thread对象,但是我找不到 为什么 不允许这样做的解释。即使可以保证线程已完成(请参见下面的示例代码)。 我不明白为什么(至少是)方法不能以某种方式将Thread对象的内部状态重置为与刚创建Thread对象时相同的值。 示例代码: 问题答案: 我知道不可能重新启动使用的Java Thread对象,但是我找不到为什么不允许这样做的解释。即使可以保证

  • 问题内容: 这个问题已经在这里有了答案 : While循环中的ReactorNotRestartable错误出现刮擦 (7个答案) 去年关闭。 与: 我一直成功地运行了此过程: 但由于我已将此代码移入一个函数中,因此: 并开始使用类实例化调用该方法,例如: 并运行: 我收到以下错误: 怎么了? 问题答案: 您不能重新启动反应堆,但是应该可以通过分叉一个单独的过程来使其运行更多次: 运行两次: 结果

  • 我正在使用Hibernate Envers来审核我的日志表,它是使用Spring配置的。但是,在执行更新、修改或删除操作时,不会发生审核。以下是配置。 Spring配置 我已经将@Audited注释添加到实体类中。我使用的是Hibernate core 3.5.0-Final和envers的相同版本。 当我检查hibernate记录的SQL时,我可以看到更新查询已经执行,但没有任何将数据插入审计表

  • 问题内容: 我的日食没有启动,因为我的计算机有点死机了,所以我不得不强制重新启动它。当我不得不重新启动时,Eclipse是打开的,我相信这很可能是原因。我不知道该如何解决。每当我尝试打开它时,它都会告诉我检查工作区中的.log文件,并显示: http://paste.strictfp.com/26579 而且我不知道如何解决它。请帮忙? 问题答案: 您缺少 第125行的 类,您必须重新安装才能解决