有什么方法可以“重新启动”JVM?
有没有办法重新启动JVM?就像在 中 一样,实际上不要退出,而是关闭并重新加载所有类,并从顶部运行 main?
有没有办法重新启动JVM?就像在 中 一样,实际上不要退出,而是关闭并重新加载所有类,并从顶部运行 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) 来指示您想要停止并保持停止状态。
IBM的JVM有一个名为“可复位”的功能,它允许你有效地完成你所要求的事情。
除了IBM JVM,我认为这是不可能的。