ボタンをクリックするなどして、作成中の既に実行中のアプリケーションを (自動的に) 閉じて再起動したいのですが、別の言語でアプリケーションを再起動する目的でそれを実行したいと考えています。一般的に JavaFx と Java は初めてですが、この問題の解決策を教えてください。
質問する
5529 次
3 に答える
2
1 つの解決策は、開始スクリプトのコマンドラインと作業ディレクトリを main() メソッドに渡すことです。ProcessBuilder を使用すると、アプリケーションを再起動できます。もう 1 つの可能性は、アプリケーション全体をカスタム クラスローダーで開始することです (たとえば、Spring プロジェクトにはソース ベースに適切なクラスローダーがあります)。基本的には、別のクラスローダーでメインを開始することで再起動できますが、スレッドとリソースを解放するための適切なハウスキーピングが必要です。最初のインスタンス。
于 2013-06-15T22:16:55.877 に答える
1
retstart.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
if(getOnCloseRequest()!=null){
getOnCloseRequest().handle(new WindowEvent(getScene().getWindow(), WindowEvent.WINDOW_CLOSE_REQUEST));
//write code to invoke application instance again
}else{
close();
}
}
});
于 2013-06-17T08:15:36.803 に答える