2014-02-12 78 views
2

在Java代碼本身中,優雅地關閉當前運行的應用程序的最佳方式是什麼,但立即打開另一個Java應用程序?關閉當前的應用程序,打開另一個

+0

一旦你關閉當前應用程序,這是不可能做到之後的其他事情。可能你想在當前關閉之前觸發另一個Java應用程序?此外,這取決於你「優雅地關閉」的意思。 – asgs

+0

嗯,是什麼「優雅地關閉」具體是指 – Coffee

+1

缺乏一個更好的短語,用這個詞認爲它會傳達正確。優雅地關閉,正確關閉,「關閉沒有問題」等。 – saki2fifty

回答

2

發生這種情況的最佳方式是程序中的最後一步(最後一段可執行代碼)應該是Runtime.exec("Whatever.exe"); type命令。

通過這種方式,在您的下一個程序啓動後,您的當前程序將完成當前執行並「正常」關閉。 (也就是說,它關閉沒有你明確地說,像System.exit(0)

+1

也許增加一個'ShutdownHook'可以使它在複雜程序中更加「優雅」。 –

+0

確實!這也是一個好主意。 – WillBD

0

下面的代碼將正常結束當前的計劃,並立即開始另:

Runtime.getRuntime().addShutdownHook(new Thread() { 
    public void run() { 
     Runtime.getRuntime().exec("java", "WhateverTheOtherJavaAppIsCalled"); 
    } 
}); 
System.exit(0); 
相關問題