2013-09-26 3 views
8

Я разрабатываю веб-проект с использованием Eclipse Juno, Tomcat 7 и Maven 3 и столкнулся с какой-то странной проблемой.Tomcat не получает правильную флягу

У меня есть отдельный проект, в котором я собираю некоторые вещи, и я выбираю эту банку в своем веб-проекте как зависимость. Итак, конечный результат - один .war. Теперь, когда я запускаю эту войну во встроенном Tomcat в Eclipse и нажимаю кнопку обновления в своем браузере, Tomcat говорит, что не может найти путь в этой банке.

В рабочей WEB-INF/Lib папка Я считаю MyApplication-синфазного widgetset-0.0.11-20130926.124257-7.jar

В каталоге Tomcat Развертывание под wtpwebapps/MyApplication/WEB-INF/lib Я вижу myApplication-common-widgetset-0.0.11-SNAPSHOT.jar Странно, что файл под Tomcat lib имеет размер 1kb, а файл в моей рабочей области lib - ~ 22Mb.

Я попытался скопировать банку рабочего пространства в папку Tomcat lib, и все работает и работает как очарование.

Обновления:

  • Когда я бегу mvn tomcat:run из командной строки в моем рабочем месте, все работает.
  • Я «переустановил» оба Eclipse (к Kepler, протирая все, включая рабочее пространство и домашние папки) и Tomcat 7. У меня все еще такая же проблема.
  • колледжи пытались извлечения мой проект из SVN и запустил его успешно, как с Eclipse, IntelliJ и + Tomcat 7

Что могло произойти? Почему Eclipse встроенный Tomcat не получает все из целевого каталога?

+0

Вы можете попробовать щелкнуть правой кнопкой мыши на Tomcat на экране Eclipse Servers и выберите «Очистить рабочий каталог» или аналогичный. Я видел похожие странные вещи, которые были решены таким образом. – geert3

+0

Чистая рабочая директория, чистый кошка, добавление/удаление проекта ничего не делает для меня, проблема сохраняется. –

ответ

0

Проблема, о которой я думаю, вы сталкиваетесь с реальностью, что затмение не строго соблюдает зависимости от maven.

Это связано с тем, что eclipse не откладывает на maven при создании, развертывании и работе на tomcat. Eclipse будет использовать локальную настройку рабочей области и, таким образом, иногда вводит дерево зависимостей, отличное от maven.

Из предоставленной вами информации представляется, что файл рабочей среды lib является одним из источников, предоставленных из репозитория maven, а тот, который находится во встроенном каталоге развертывания tomcat, представляет собой банку, которую построил затмение - я предполагаю здесь.

Если эта банка из проекта рабочей области вы можете попробовать закрыть проект и позволить затмению найти банку с maven.

Эта проблема с Eclipse, и Maven довольно туманной и так трудно понять, что именно происходит в терминах зависимостей, так жаль, что я не могу быть больше помощи

+0

В моем случае пропущенные банки были построены вместе с проектом, который я пытаюсь развернуть.Банки, которые были развернуты с 1kb, также были созданы в одной и той же установке maven, из того, что вы говорите, тот факт, что я использую maven для сборки, вызывает проблемы с eclipse. Не знаю, как это исправить. –

Смежные вопросы