私の Mule アプリケーションは、Spring Bean として開始される Java クラスを使用します。これはうまくいきます。しかし、アプリケーションをアンデプロイして新しいバージョンをデプロイすると問題が発生します。
アプリケーションをアンデプロイした後も、Java プロセスはアクティブなままです。新しいバージョンのアプリケーションをデプロイすると、Java クラスの 2 つのインスタンスが実行されます。
解決策として、Java クラスにシャットダウン フックを追加しました。フックは機能しますが、Mule 自体をシャットダウンした場合のみです。アプリをアンデプロイするときではありません。
これをテストするために、次のことを行いました。
- アプリケーションをデプロイしてアンデプロイします。
- ログで Java プロセスのシャットダウンのメッセージを確認してください。何も見つかりませんでした。
- アプリケーションを再度デプロイします。
- Mule を停止してログを確認します。現在、Java プロセスのシャットダウンに関する 2 つのエントリがあります。
アプリケーションをアンデプロイするときに Java プロセスを停止するにはどうすればよいですか?
ありがとう、ジェロン
Mule 3.4.0 と jdk1.7.0_25 を使用しています。