Maven копирует JAR-файлы Tomcat в каталог веб-приложений WEB-INF / lib

1

У меня очень простой webapp, опубликованный как WAR файл, который разрабатывается в Eclipse. Я использую m2e для управления зависимостями. В моем проекте на вкладке " Project Facets " включен Dynamic Web Module вместе с Java. Кроме того, в моей Deployment Assembly меня есть перечисленные зависимости Maven, но нет параметров включения/исключения:

Изображение 174551

Моя WAR строит отлично и отлично работает в Eclipse. Тем не менее, Dynamic Web Module похоже, приводит к моему файлу WAR, содержащему несколько Tomcat JAR, в дополнение ко всем моим другим зависимостям:

Изображение 174551

Я смог удалить tomcat-catalina-7.0.30.jar (не изображен), включив в свой POM.xml:

    <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-catalina</artifactId>
        <version>7.0.30</version>
        <scope>provided</scope>
    </dependency>

Но, похоже, должен быть способ сказать Maven, что весь контейнер Tomcat будет предоставлен во время выполнения. Я не хочу добавлять ~ 20 provided записей, чтобы удалить остальные.

  • 1
    Почему у вас вообще есть зависимости tomcat-xyz.jar? Пожалуйста, покажите свой pom.xml.
  • 0
    @Stefan Стефан, я понятия не имею - это то, что я пытаюсь выяснить и исправить.
Показать ещё 1 комментарий
Теги:
maven
tomcat

1 ответ

2
Лучший ответ

Посмотрите на POM вашего проекта. Где-то кто-то добавил их без надлежащего scope.

В Eclipse вы можете использовать редактор POM. В нижней части редактора есть набор вкладок. Один читает "Иерархия зависимостей". Здесь вы можете найти "tomcat", а m2e сообщит вам, какие POM содержат такую зависимость.

  • 0
    Вы были совершенно правы, другие дополнительные JAR-файлы должны были предупредить меня. Я забыл добавить provided область к своему tomcat7-maven-plugin используемому для развертывания. Следовательно, все вагоны JAR в дополнение к Tomcat.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню