2010-10-07 5 views
6

Мне было интересно узнать, какая была бы лучшая практика для развертывания файла WAR WARMAN в tomcat. Использование релиз Maven плагин, который я получаю версионную военный файл для моего проекта например: MyService-1.0.0.warразвертывание файла WAR с версией для tomcat

Я хотел бы развернуть его так, что кот я могу получить доступ к нему следующим образом например: http://localhost:8080/myservice

По умолчанию tomcat взрывает военный файл как каталог с именем myservice-1.0.0 под CATALINA_HOME/webapps. Но я хочу взорвать войну как каталог с именем myservice по причинам, упомянутым выше.

Я знаю, что могу просто переименовать myservice-1.0.0.war >> myservice.war, а затем развернуть его в Tomcat.

Я хотел узнать, что делают другие?

ответ

3

Я бы сделал это, указав myservice как artifactId и окончательное имя и используя плагин для maven для развертывания в tomcat. http://cargo.codehaus.org/Maven2+Plugin+Tips

+0

спасибо. Я использую id артефакта как myservice, но мне также нужно выполнить версию проекта, которая в моем случае равна 1.0.0 . Какую подсказку вы упомянули в приведенной ссылке? – andthereitgoes

+0

ok ... в теге build есть возможность предоставить finalName, которое станет названием войны. Вы пытались настроить его? –

+0

Ох круто спасибо. Я забыл об этом. Да, это вариант, я определенно мог бы попробовать это. Мне все еще интересно узнать, как другие подходят к ним для своих производственных сборок. – andthereitgoes

0

Вместо переименования файла войны вы могли бы сделать это:

Просто добавьте следующее в свой файл tomcat-dir/conf/server.xml между <Host>..<\Host> тегами.

для: MyService-1.0.0.war файл

<Context path="/myservice" docBase="/myservice-1.0.0" debug="0" reloadable="true"></Context> 

Reference

+0

Это разумно для основных версий, но если ваша версия меняется часто, вы можете предпочесть что-то более автоматизированное. Я мог бы смешать ваше решение с вышеуказанным, чтобы обрезать номер второстепенной версии из имени файла. – djjeck

1

Я столкнулся с той же проблемой. То, что сработало для меня вставляли это свойство элемент в грузовой развертываемых конфигурацию:

    <deployable> 
         <groupId>org.something</groupId> 
         <artifactId>something-idm-esb</artifactId> 
         <properties> 
          <context>something-idm-esb</context> 
         </properties> 
         <type>war</type> 
        </deployable> 

Без этого свойства элемента, приложение будет развернуто на локальный хост: 8080/что-то-ИОЕ-ESB-0.9.14.2, который не то, что есть приложение требуется во время выполнения. В разделе свойств приложение развернуто на localhost: 8080/something-idm-esb/