有什么方法可以"重启"JVM?

Ale*_*lex 31 java jvm

有没有办法重启JVM?就像在实际上不退出,但关闭并重新加载所有类,并从顶部运行main?

And*_*isi 17

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

#!/bin/sh
while true
do
    java MainClass
done
Run Code Online (Sandbox Code Playgroud)

如果您想要完全重启或关闭,可以测试退出状态:

#!/bin/sh
STATUS=0
while [ $STATUS -eq 0 ]
do
    java MainClass
    STATUS=$?
done
Run Code Online (Sandbox Code Playgroud)

在java程序中,您可以使用System.exit(0)表示您要"重新启动",并使用System.exit(1)表示您要停止并保持停止状态.


Dus*_*inB 7

IBM的JVM有一个名为"resettable"的功能,可以让您有效地完成您的要求.

http://publib.boulder.ibm.com/infocenter/cicsts/v3r1/index.jsp?topic=/com.ibm.cics.ts31.doc/dfhpj/topics/dfhpje9.htm

除了IBM JVM之外,我认为不可能.