Eclipse 3.7 / Indigo m2e WTP проблема зависимости от интеграции - PullRequest
7 голосов
/ 18 августа 2011

Я только что переключился на Eclipse Indigo от Helios и столкнулся с некоторыми трудностями при попытке запустить веб-проект с поддержкой Maven на Tomcat 6 с WTP.

Я испытываю классическую проблему, когда Tomcat не видит зависимости Maven. В Helios обходным решением было добавить зависимости Maven в сборку развертывания с помощью: Свойства проекта -> Сборка развертывания -> Добавить 'Записи пути сборки Java' -> Зависимости Maven

К сожалению, опция «Записи пути сборки Java» отсутствует, только «Папка» и «Проект». Я не уверен, что это преднамеренно или что-то не так с моей настройкой.

В попытке удалить внешние факторы я использую следующую настройку:

  • Свежая установка Eclipse Indigo (Mac)
  • Свежее рабочее пространство
  • m2e Интеграция WTP, установленная через Eclipse Marketplace
  • Создание нового проекта Maven
  • Добавьте некоторые зависимости maven, а также код для их использования
  • Преобразовать проект в граненую форму
  • Добавить фасет «Динамический веб-модуль»
  • Maven> Обновить конфигурацию проекта
  • Добавить на сервер Tomcat 6
  • Запуск на сервере

На данный момент, я вижу, получить ClassNotFoundException, относящиеся к моим отсутствующим зависимостям. Если я запускаю 'mvn war: war' и включаю собранный каталог 'WEB-INF / lib' в сборку развертывания проекта, то, конечно, зависимости правильно подобраны - хорошо для быстрого исправления, но не идеально.

Большинство проблем, о которых я читал, связанных с аналогичными проблемами, связано с отсутствующим модулем интеграции WTP, но, похоже, это не проблема для меня.

Я что-то не так делаю?

Ответы [ 4 ]

3 голосов
/ 21 августа 2011

Похоже, тип упаковки new maven project составляет jar. Если это так, вы можете изменить его на war и попробовать.

1 голос
/ 13 марта 2013

Щелкните правой кнопкой мыши по проекту

  1. выберите Deployment Assembly> нажмите кнопку Добавить

  2. Выберите Java Path Path Entries из всплывающего окна, нажмите Next

  3. Используя Ctrl и мышь, чтобы выбрать все показанные lib

После этого вы увидите изменения в файле .classpath.

Опубликуйте свойснова проект во вкладке сервера.

1 голос
/ 02 апреля 2012

Вот еще одно решение: исправлен файл .classpath

    <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
           <attributes>
-                   <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+                   <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
            </attributes>
    </classpathentry>
0 голосов
/ 30 марта 2012

Ответ на другой вопрос, связанный с WTP-котом (если упаковка уже WAR, но библиотеки не развернуты), обсужден в Странное поведение развертывания зависимостей Eclipse WTP на сервере Tomcat

...