2013-02-14 34 views
60

tomcat 7のマネージャーアプリである を使用しています。アプリケーションを完全にアンデプロイできません。Tomcat 7で完全にWebアプリケーションをアンデプロイできない

それは私がそのためにメモリリークと呼ばれるいくつかの現象のどこかで読んで、私たちはそれを修正する場合は、問題が解決されます FAIL - Unable to delete [F:\apache-tomcat-7.0.33\webapps\balaji]. The continued presence of this file may cause problems.

言います。

誰もがtomcat 7でこのメモリリークを教えてもらえますか?どのように修正できますか? 私はWindows 7 OSを使用しています。 私が修正できれば、私のアンデプロイメントと再デプロイメントプロセスはスムーズに実行されますか?

答えて

110

これは、Windows環境では非常に一般的ですが、そこのソリューションです:

オープンのcontext.xmlは/ Tomcatの/ confフォルダから、これと一致するようにコンテキストを変更します。

<Context antiResourceLocking="true"> 

編集を: @JanMコメントの後に更新されたプロパティ。以前は「antiJARLocking」も含まれていました。

+0

ソリューションのおかげで、 その良いこと.. ..! – bali208

+0

Windowsでのみ発生しますか? TomcatはJavaをベースにしており、私はTomcatのUbuntuで同様の問題を抱えています。 – icedwater

+1

私はそれがWindowsにとってよくあることだと言いましたが、少なくともそれは私と私が知っている人の場合でした。 Ubuntuの場合も同様です。 – mvlupan

13

これはtomcatの一般的な問題の1つです。 Tomcatサーバーは、起動時にリソースを保持し、展開します。展開していない間も、Tomcatは依然としてリソースを使用しています。まだリソースを解放していないのですが、同時に、Tomcatの別のスレッドが同じリソースをクリーンアップしようとします。したがって、これらのリソースの削除は失敗します。 Webアプリケーションでアプリケーションのルートディレクトリを手動でクリーンアップすることをお勧めします。

+1

これは必ずしも機能しません。 jarファイルがロックされている場合、親フォルダは削除できません。アプリケーションを停止しても、必ずしもそのjarファイルが解放されるわけではありません。 Tomcatの再起動を強制します。 – cbmeeks

0

Apache Tomcat/8.0.5で同じ問題が発生しました。私はマネージャーアプリを使用して次のステップを実行し、それは私のために働いた。

  • (キャッシュを削除するために)すべてのタブを含むブラウザを閉じます。
  • 'Manager App'を再度開いて、アプリケーションが が停止していることを確認します(開始ボタンを有効にする必要があります)。
  • アンデプロイをクリックします。

私はアンデプロイを直接クリックすると、まずジャンパーをロックし、アプリケーションを停止してアンデプロイしようとしますが、FAIL - Unable to deleteメッセージで失敗すると思います。

ステータスが本当に混乱している場合は、ブラウザを閉じてtomcatを再起動し、「manager app」を開いて「stop」をクリックしてから展開を解除します。

0

antiResourceLocking:
trueの場合、Tomcatはファイルロックを防止します。これは、アプリケーションの起動時間に大きな影響を与えますが、ファイルロックが発生するプラットフォームまたは構成では、完全なWebアプリケーションのホットデプロイメントおよびアンデプロイが可能です。指定しない場合、デフォルト値はfalseです。

これをtrueに設定すると実行しているサーバーにリロードJSPの無効化を含め、いくつかの副作用を持っていることに注意してください:Bugzillaの37668.

を参照のappBase外にあるアプリケーションでは、このフラグをtrueに設定することに注意してくださいホスト(デフォルトでwebappsディレクトリ)の場合、Tomcatのシャットダウン時にアプリケーションが削除されます。おそらくこれをやりたくないので、ホストのappBaseの外にあるWebアプリケーションでantiResourceLocking = trueを設定する前に2度考えてください。

関連する問題