Упаковка и публикация EAR в Eclipse с использованием Ant builder для сборки зависимых модулей

У меня есть требование, когда отдельные модули создаются с использованием ant, а полученные в результате jar-файлы должны использоваться eclipse для упаковки уха и публикации на сервере JBoss.

Я написал скрипт ant, который создает модули зависимостей и помещает их в каталог project/build/artifact. И использовал банки в этом каталоге для предоставления зависимостей модуля Java EE.

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

После построения модулей и обновления рабочей области проекта модули распознаются и добавляются в ухо. Но зависимости модулей не отображались, пока я не сделал вид, что изменил файл компонента (добавил новую строку или пробел и сохранил его - на самом деле не изменяя содержимое) и не обновил проект, и это сработало. Я искал в eclipse, чтобы узнать, существует ли это ошибка, но не нашел никаких связанных ошибок.

Я делаю что-то не так здесь? Является ли этот подход правильным подходом для получения модулей, созданных муравьем, и использования их в упаковке уха и публикации с помощью eclipse? Пожалуйста помоги.


person Developer    schedule 07.02.2011    source источник


Ответы (1)


Скорее всего это ошибка в WTP, но..

Я бы держал сборки Ant и Eclipse отдельно друг от друга. Используйте свой сценарий Ant для создания ваших «официальных» сборок для производства. Во время разработки не пытайтесь передать результат сборки Ant в сборку Eclipse. Вместо этого сделайте это с прямыми зависимостями модуля Java EE от проекта к проекту.

Единственный случай, когда действительно необходимо вовлекать Ant в сборку Eclipse, — это когда вам нужно интегрировать внешние компиляторы или генераторы кода в процесс сборки.

person Konstantin Komissarchik    schedule 08.02.2011
comment
Извините... мой вопрос не был полным. Причина, по которой мне пришлось использовать ant для создания зависимых модулей, заключалась в том, что мне нужно было поместить два проекта JPA в одну банку. Eclipse упаковывал их в две разные банки. В противном случае то, что вы предложили, будет работать просто отлично. Я решил создать ухо через ANT вместо того, чтобы полагаться на eclipse, чтобы упаковать ухо для меня. - person Developer; 09.02.2011