У меня есть веб-проект maven, который импортирован в Eclipse.У меня есть другой проект Maven (генерирует файл JAR), от которого зависит веб-проект.
Оба эти проекта работают правильно при выполнении из командной строки.Пакет mvn создает файл war, который извлекает банку, от которой он зависит, из репозитория maven для веб-проекта.Пакет mvn создает действительный файл jar при запуске для библиотеки.
Когда я импортирую библиотеку в Eclipse, m2e распознает, что веб-проект зависит от библиотеки, и обновляет части проекта, чтобы использовать тот факт, чтооба проекта maven размещаются в одном рабочем пространстве Eclipse.В разделе «Зависимости Maven» вкладки «Библиотеки» предпочтения «Путь сборки Java» для веб-проекта удаляется файл jar библиотеки и заменяется на проект библиотеки.Поскольку библиотека обновляется в Eclipse, веб-проект распознает эти изменения без необходимости устанавливать / развертывать библиотеку.
Проблема возникает, когда я пытаюсь запустить веб-приложение в Eclipse.Поскольку Eclipse фактически строит веб-проект на основе версии библиотеки в Eclipse, он не развертывает файл библиотеки из репозитория maven, он создает новый файл jar, который представляет собой снимок текущей версии библиотеки в Eclipse.Все это в целом хорошо сработало для меня, но в проекте, над которым я сейчас работаю, есть проблема с файлом jar, который создает Eclipse.Вместо того, чтобы вставлять файлы классов для библиотеки, кажется, что она берет каталог «src» моего проекта Maven и архивирует его как файл jar.Содержимое файла jar выглядит примерно так:
-main
-java
-com
-... *.java
-resources
-...
-test
-java
-com
-... *.java
Где я ожидаю, что оно будет выглядеть примерно так:
-com
-... *.class
Поскольку я успешно использовал этот тип проекта ранее, яя пытаюсь выяснить, есть ли что-то, что мне нужно настроить, или я только что столкнулся с ошибкой.
Я использую последнее обновление m2e (1.0.200.20111228-1245) на Eclipse Indigo (Идентификатор сборки: 20120216-1857).