Развертывание веб-приложения с помощью плагина tomcat7-maven-plugin

Итак, вам понадобилось развернуть приложение на сервере приложений Tomcat в конце сборки мавеном. Для этого есть плагин tomcat7-maven-plugin, я использовал его для Tomcat 8, бегающего на java 8. Подробности далее. Для развертывания нужно выполнить несколько действий руками: 1. В Tomcat8 прописываем пользователя admin/password с ролями "manager-gui,manager-script" в файле tomcat-users.xml (это минимальный набор для поставленной задачи, вы можете добавлять другие роли):
<user username="admin" password="password" roles="manager-gui,manager-script"></user>
2. Добавляем в мавен файл settings.xml по пути C:\Users\%username%\.m2 (для Windows):
<settings>
    <servers>
        <server>
            <id>TomcatServer</id>
            <username>admin</username>
            <password>password</password>
        </server>
    </servers>
</settings>
3. В Windows возможна ошибка (видна в вебморде по адресу http://localhost:8080/manager/html), связанная с тем, что Томкат не может вычистить файлы распакованного WAR.
FAIL - Unable to delete [C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps\app]. 
The continued presence of this file may cause problems.
Лечится редактированием файла conf/context.xml - добавить antiResourceLocking="true":
<context antiResourceLocking="true">
...
</context>
4. Вставка в pom.xml:
    <build>
        <plugins>
           <plugin>
                <groupid>org.apache.tomcat.maven</groupid>
                <artifactid>tomcat7-maven-plugin</artifactid>
                <version>${tomcat.plugin.version}</version>
                <configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <server>TomcatServer</server>
                    <username>admin</username>
                    <password>password</password>
                    <path>/client</path>
                    <update>true</update>
                </configuration>
            </plugin>
        </plugins>
    </build>
Обратите внимание на ссылку в настройках: http://localhost:8080/manager/text, а не http://localhost:8080/manager/html. 5. Рестартим Томкат, если нужно подхватить изменения в конфигах. Ожидается, что он поднимается на порте 8080. 6. Выполняем для проекта сборку мавеном по команде: mvn clean package tomcat7:redeploy . Обратите внимание- в цели указан tomcat7. 7. Открываем ссылку http://localhost:8080/client 8. PROFIT 🙂
You can leave a response, or trackback from your own site.

Leave a Reply