Java で「アプリケーションの起動を複数回呼び出すことはできません」という例外に対処する方法
launch() を複数回呼び出すJavaFX アプリケーションでは許可されません。これは JavaFX ドキュメントに明示的に記載されています:
複数回呼び出すことはできません。呼び出されないと例外がスローされます。
ウィンドウを定期的に表示するための提案
launch() を複数回呼び出す代わりに、次の手順に従います:
実装例:
<code class="java">public class MyApplication extends Application { private Stage primaryStage; @Override public void start(Stage primaryStage) { this.primaryStage = primaryStage; primaryStage.setScene(new Scene(new Label("Hello, World!"))); primaryStage.show(); // Keep the JavaFX runtime running in the background Platform.setImplicitExit(false); } public void showNewWindow() { Platform.runLater(() -> { Stage newWindow = new Stage(); newWindow.setScene(new Scene(new Label("New Window"))); newWindow.show(); }); } public static void main(String[] args) { launch(args); } }</code>
代替アプローチ:
結論 (オプション):
これらのガイドラインに従うことで、「アプリケーションの起動は禁止されています」を回避できます。 「Be Called More than Once」例外が発生し、JavaFX アプリケーションでウィンドウを定期的に表示します。
以上がJavaFX で「アプリケーションの起動を複数回呼び出すことはできません」例外を回避する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。