2016-04-25 20 views
0

シンプルなバーコードジェネレータアプリケーション用の実行可能なJARファイルを作成しました。私はそれをEclipseからデスクトップにエクスポートして実行し、それを削除すると決めたら、次のようにポップアップします:Error in deletingファイルがJava Platform SEバイナリで開いているため、アクションを完了できませんか?

これを防ぐにはどうすればよいですか?残っているかもしれないスレッドを殺す方法?またはJVMに保持されているセッションはどれですか?

任意の助けをいただければ幸い、

ありがとうございました。実行の終わりか、メインスレッドを終了する前に

+0

メモ帳で開いているファイルを削除しようとすると、同じエラーが発生します。 –

+0

はい、しかし、ノーパッドでは、メモ帳を閉じることができますし、試して削除すると、そのことは言いません。私のコードはrunnable jarを終了させて​​いません。これは必要なものです。 – DesignAndCode

+0

次に、コード**を投稿することをお勧めします。 –

答えて

0

は、私たちは、私はそれを把握するために管理

0

を実行し、現在のプロセスによって使用されている任意のファイルを取り除くまたはインスタンスgitの、私は持っていなかったSystem.exit(STATUS_CODE)を使用して好みます"System.exit(0);"私のコードで呼ばれる。だから私は使用:

frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 

が内部で使用しています。この「でSystem.exit();」、あなたはJavaアプリケーションのウィンドウの「×」ボタンを押すと、それはJVMでJavaの実行中のすべてのスレッドを終了しますとなります。その後、JVM自体を終了します。他のJavaスレッドを開いている場合は、EXIT_ON_CLOSEを実行すると、それらのすべてが閉じられます。 JVMで実行されているすべてのJava SEバイナリ実行可能ファイルをタスクマネージャで閉じると、これをコードに追加して新しい実行可能なJARを出力しました。私はそれを実行し、その後それを閉じて、それを削除するために行った。正常に削除されました。

これは、これに固執している可能性のある人に役立つことを願っています。

関連する問題