JRE更新後出現問題。Java應用程序在JRE更新後阻止服務器重新啓動
如果我已啓動Java應用程序並啓動系統重新啓動 - Windows無法自動停止此Java應用程序,並且我收到以下消息: 「此程序阻止Windows重新啓動」。 如果我按取消,那麼我可以看到防止重新啓動的Java應用程序掛起。 此問題影響我的Java應用程序和jconsole等應用程序。
在JRE更新之前一切正常JRE 1.6.0_26。 我第一次遇到這個問題JRE 1.6.0_36。但它也發生在1.6.0_39。
P.S:我有Windows Server 2008 R2是Interprise
有沒有人有同樣的問題,或者可以建議哪些在這種情況下怎麼辦? 謝謝。
更新: 我已經實現以下addhook:
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
logger.log("SHUTDOWN - BEGIN");
((Window) view).setVisible(false);
logger.log("SHUTDOWN - Visible");
((Window) view).dispose();
logger.log("SHUTDOWN - Dispose");
System.exit(0);
}
});
這樣的addhook應用程序後正常關閉,系統重啓,但我想通了,如果我們只是關閉程序(按退出或「x」)Java VM沒有終止(我們可以在taskmgr中看到javaw進程)。
從日誌文件我可以看到程序從不離開dispose()函數。如果我評論dispose()並且只保留System.exit(0)Java VM仍然無法終止。
更新2: 已爲此問題創建票證。我們收到了以下來自的回覆Oracle:「問題得到轉載和確認。」
這發生在所有Java應用程序或其中的一些? – matts
正如我之前提到的,這發生在所有測試的應用程序(我們和三維方) –
你看看你的處理方法在做什麼?它可能會給出一些線索 –