1. 程式人生 > >在春天結束JVM當瀏覽器選項卡關閉啟動應用程式

在春天結束JVM當瀏覽器選項卡關閉啟動應用程式

我有一個spring-boot web應用程式分配jar檔案。 啟動應用程式的程式碼如下:

private static ConfigurableApplicationContext ctx;

public static void main(String[] args){

    if(ctx == null) {
        ctx = SpringApplication.run(MyApplication.class, args);
    }       
    try {
        openHomePage("http://localhost:8090/");
    }catch(Exception e) {
        logger.error("Error occured starting the application: ", e);
        ctx.close();
    }

}

private static void openHomePage(String url) throws IOException, URISyntaxException {
if(Desktop.isDesktopSupported()) {
URI homePage = new URI(url);
Desktop.getDesktop().browse(homePage);
}else {
Runtime runtime = Runtime.getRuntime();
runtime.exec(new String[]{"cmd", "/c","start chrome " + url});
}

}

開啟主頁Chrome當我執行它Eclipse通過雙擊jar檔案。

問題是當我從啟動應用程式jar檔案並關閉瀏覽器選項卡,應用程式繼續執行JVM我必須殺了它task manager手動是煩人的。 如果我不殺死JVM然後再雙擊jar檔案,應用程式不會自動啟動,第一次,我必須手動開啟一個新的瀏覽器選項卡和型別http://localhost:8090 /為了使用該應用程式。

有可能殺死每個程序在使用者關閉瀏覽器選項卡,這樣當他們下次點選jar檔案需要使用應用程式,自動將開啟一個新的瀏覽器選項卡嗎?