リフレクションを使用して別のJavaプログラムのmain(String [] args)メソッドを見つけて呼び出すJavaプログラムがあります。この他のプログラムは通常、独自のスレッドを生成する傾向のあるSwing Appです。私は、この他の「プログラム」がいつ終了するかを判断する方法があるかどうか疑問に思っていました。私はそれがホストプログラムと同じスペースで実行されるため、これを検出する方法があるかどうかはわかりません。現在の方法は、開かれているフレームのどれかが私たちのものではなく、正確には最大の解決策ではないかどうかをチェックすることです。そのプロセスで子プログラムを実行することは、実際にはオプションではありません。javaリフレクションを使用してアプリケーションを開始した時期を判断する方法
EDIT:これは二重のアプローチです。最初にThreadGroupを作成し、そのグループのメンバーであるスレッドで子プログラムを起動します。子フレームに属するフレームがある場合は、Frame.getFrames()を必ずチェックしてください。
が--Sandro
わからない。それは別のEDTを取得しませんでした。メイン()が終了すると、このチェックは誤った答えを返す可能性があります。 – akarnokd
非公開APIを使用してAppContextを設定する必要があります。 –
今すぐ試してみてください。すぐに結果が返ってきます。 – Sandro