Tomcat undeploy nie usuwa artefaktów aplikacji internetowych

Jak zmusić program Tomcat do usunięcia artefaktów aplikacji webowej podczas używania Menedżera do cofnięcia aplikacji?

Używam Tomcat 6.0.18. Aplikacja została wdrożona przy użyciu Tomcat-maven-plugin 1.0-SNAPSHOT, ale zachowanie jest takie samo za pośrednictwem wtyczki maven lub interfejsu internetowego.

Dokumentacja Tomcat zawiera ostrzeżenia o tym, jak undeploy powinien zachowywać się na Menedżer Jak .

Plik war można usunąć, jednak rozpakowany katalog aplikacji pozostaje bez zmian.

 14
Author: Joppe, 2009-01-27

2 answers

Może się zdarzyć, że Twoja aplikacja nie może zostać całkowicie odrzucona, ponieważ istnieją wątki w tle (które najprawdopodobniej uruchomiłeś samodzielnie) lub długo działające żądania, które uniemożliwiają całkowite zatrzymanie aplikacji.

Sprawdziłeś pliki dziennika? Czy stwierdzili, czy wniosek może zostać pomyślnie odrzucony? Czy wręcz przeciwnie? Czy można dostać zrzut wątku po próbie undeploy (kill -3 processid na Unixie, Ctrl-Break w konsoli w Windows) i zobaczyć, czy tam czy nadal działa coś, co nie powinno?

Zauważ również, że większość aplikacji, które widziałem, nie może być całkowicie odrzucona w odniesieniu do pamięci, którą zabrali. I ' ve running outofmemoryerrors (PermGen) dość często, zwłaszcza po przesunięciu webapps (znajdziesz wiele odniesień na PermGen jeśli google dla niego) do nich wierzę przesunięcie jest ok dla maszyn rozwojowych, ale nie dla produkcji. Lepiej to wiedzieć, zanim zaczniecie się zastanawiać nad tym w produkcji.

 2
Author: Olaf Kock,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-02 19:47:15

Może to być również problem z blokowaniem plików (szczególnie w systemie Windows), jeśli uzyskujesz dostęp do zasobów w bibliotece JAR za pośrednictwem adresu URL w aplikacji.

Właśnie miałem podobny problem i naprawiłem go modyfikując następujący wiersz w

Apache Tomcat / conf / context.xml

Plik do:

<Context antiJARLocking="true" antiResourceLocking="true" >

(zauważ, że istnieje pewna niezgodność co do tego, czy jest to produkcja bezpieczna, ponieważ tworzy kopie Twojej webapp dla każdego przesunięcia, ale jeśli jesteś na Windows i nie można rozwiązać problemu u źródła, może to zapewnić wykonalne rozwiązanie).

 26
Author: Richard Nichols,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-16 00:58:09