- ベストアンサー
スタンドアロンJavaプログラム(Swing)の複数起動の抑止方法
SwingでスタンドアロンのJavaプログラムを作成しています。 Executable JARファイルとして、ダブルクリックにより起動するのですが、一度起動した後もう一度ダブルクリックすると同じプログラムが別に起動してしまいます。 JDK1.5、OSはWindowsが対象です。 複数起動できないようにする方法はありますでしょうか? よろしくお願いします。 ※ファイルに起動フラグを書出すという方法は考えてみましたが、クラッシュ(異常終了)したときに起動不可能になるためこの方法は使用できませんでした。
- みんなの回答 (2)
- 専門家の回答
お礼
ご回答ありがとうございます。 今回は、「(2)ファイルチャネルのロックを利用する方法」を使わせていただきます。 java.util.logging.Loggerを使っていて、ファイルのロックの例はすぐ目の前にあったのですが、重複起動チェックに使用することまでは気付きませんでした。 タスクマネージャーでJavaプログラム起動中にjavaw.exeプロセスを終了する確認などもしてみました。 今のところ、この方法で特に問題はなさそうです。 非常に助かりました。ありがとうございました。