Tomcat zawsze wyodrębni zawartość pliku wojny, do folderu o tej samej nazwie (gdy jest skonfigurowany do wdrażania wojen - jako domyślny itd.).
Możesz wyodrębnić go do wybranej nazwy folderu. Jeśli więc ręcznie rozpakujesz zawartość foo.war
do folderu o nazwie bar/
, zamiast po prostu rzucić wojnę do folderu aplikacji internetowych, nadal będzie ona ładować aplikację internetową.
Jednak jest to zupełnie niepotrzebne, jak można określić wzorzec URL aplikacji nie brudząc z nazwą pliku folderu/wojennej w ogóle nadrzędnymi element kontekstowy katalog główny dla aplikacji:
Często jest ustawiony w Tomcat server.xml
- ale ta praktyka jest dość szeroko odradzana. Zamiast tego, sugeruję użyć context.xml
w folderze META-INF swojej aplikacji internetowych pliku/War:
<Context path="/bar" .../>
Gdy aplikacja jest zadziałały, context.xml
powinny być kopiowane do /conf/Catalina/localhost
ale przemianowany na
Należy pamiętać, że korzenie koneksji muszą być unikatowe i istnieją pewne dodatkowe uwagi, jeśli używasz operacji autoDeploy
lub deployOnStartup
(Źródło http://tomcat.apache.org/tomcat-7.0-doc/config/context.html).
Inne opcje obejmują:
- Oczyść web apps folderu każdą instalację i upuść nowy
foo-1.1.0
wojnę w
- Dołącz numer wersji w pliku płaskiego..
foo/version1
- Albo po prostu dołącz wersję do pliku config/XML.
Można również użyć narzędzia Ant (lub równoważnego narzędzia) do zautomatyzowania wdrożeń (i wykonać dowolne z powyższych czynności).
Prawdopodobny duplikat [Oddzielającej nazwę aplikacji wojennej od nazwy pliku wojny] (http://stackoverflow.com/questions/5875413/separating-war-application-name-from-war-file-name) – OhadR