回答
創建一個進程,該進程將使用java啓動新的application.invoke java -jar yourApp.jar
並停止當前的應用程序。
創建批處理文件myBat.bat
PING 1.1.1.1 -n 1 -w 30000 >NUL // wait for your application to stop 3000 milsec
java -jar yourApp.jar
之前system.exit(0)
呼叫
Runtime.getRuntime().exec(myBat.bat); // give proper path
這將在JVM之外執行 – 2011-04-15 06:45:07
@piyush它必須是,因爲你的jvm將執行'System.exit(0)' – 2011-04-15 06:53:07
公平的,通常我不喜歡在JVM之外執行某些東西。 – 2011-04-15 06:57:31
除了Jigar的解決方案,您可能要委託其他參數重新啓動的應用程序,例如VM選項,程序參數或應用程序的基本目錄。您可以將此存根擴展爲您的需求:
private static void restartApplication() throws IOException {
List<String> arguments = ManagementFactory.getRuntimeMXBean().getInputArguments();
List<String> fullRestart = new ArrayList<String>();
fullRestart.add(System.getProperty("java.home")+"/bin/java");
fullRestart.addAll(arguments);
fullRestart.add("-cp");
fullRestart.add(System.getProperty("java.class.path"));
// Assuming that 'Application' contains the main method:
fullRestart.add(Application.class.getName());
ProcessBuilder pb = new ProcessBuilder(fullRestart);
pb.directory(new File(".").getParentFile());
System.out.println("Starting app - arguments: " + fullRestart);
pb.start();
System.exit(0);
}
但是不要直接在main-method內調用它,即使是爲了測試的目的 - 它會無限重啓自己...... – sschwieb 2011-04-15 07:28:32
- 1. 重新啓動和更新的ClickOnce應用程序在生產
- 2. 應用程序何時重新啓動?
- 3. Chrome應用程序重新啓動時發生的事件
- 4. 首選項更改僅在重新啓動應用程序時發生
- 5. 如何在新應用更新時強制重新啓動AppStore
- 6. 如何重新啓動應用程序的更新循環
- 7. ClickOnce更新時,應用程序會重新啓動多次
- 8. 當應用程序重新啓動時,來自ADFS的ProviderKey發生更改
- 9. 在重新啓動應用程序時重新啓動Android活動
- 10. 在應用程序中更改語言 - 如何重新啓動?
- 11. RestartManager無法在更新期間重新啓動應用程序
- 12. CoreData只在重新啓動應用程序後更新?
- 13. QT4:如何重新啓動應用程序?重新設置?
- 14. React Native iOS應用程序在重新啓動時重新啓動
- 15. Java應用程序在關閉時如何重新啓動?
- 16. 如何在暫停時重新啓動整個應用程序?
- 17. [Android]應用程序重新啓動設備後重新啓動
- 18. 將重新啓動應用程序重新啓動前面
- 19. 自動更新後重新啓動我的應用程序?
- 20. 市場更新後自動重新啓動應用程序
- 21. 鉻/鉻應用程序更新後自動重新啓動
- 22. 自動更新位置而不重新啓動應用程序
- 23. 在設備重新啓動時啓動iOS應用程序
- 24. 如何在每次打開應用程序時重新啓動應用程序?
- 25. 如何在新應用程序啓動時啓動服務?
- 26. 如何在重新啓動Android應用程序時定義啓動的活動?
- 27. 在Android上重新啓動我的應用程序時發生EOFException
- 28. 如何重新啓動設備後重新啓動應用程序?
- 29. 如何發現ASP.NET應用程序重新啓動的原因
- 30. 重新啓動應用程序時的流星自動刷新
是在應用程序本身或單獨的應用程序中重新啓動應用程序的按鈕? – MeBigFatGuy 2011-04-15 06:34:13