Я скорее новичок в развертывании java jars.У меня есть следующий сценарий: у меня есть около 6 проектов в Eclipse, и они имеют различные типы (основной проект для общих интерфейсов, проекты, содержащие пакеты osgi, проект с тестами, проект с сервлетами для веб-развертывания).
У меня естьРастущая проблема быстрого развертывания чего-либо, сегодня я сталкиваюсь с развертыванием пакета OSGi, хочу быстро и надежно упаковать свой пакет и развернуть его в контейнер.До этого дня я просто делал это глупо, экспортируя jar через eclipse, а затем редактируя манифест.
Я думаю, что лучшим способом (без лишней работы) было бы использование одного большого файла сборки Ant с целями, которые будут решатьвещи, которые мне нужны срочно (создание пакетов OSGi сейчас), а затем перемещать больше логики сборки, шаг за шагом, из eclipse в файл сборки (я понимаю, что есть простой способ запустить цели ant через eclipse и даже заменить логику autoprojectbuild для eclipse на customфайл сборки).
Итак, это мой план:
1) создать 1 основной файл сборки со всем в каталоге src (содержащий все проекты)
2) создать задачу дляпроект строительства с комплектом OSGi.Используя manifest.txt с манифестом, созданным вручную для моего пакета, и Copy Paste (через задачу ant) все jar-файлы, необходимые в этом пакете, и используйте Bundle-ClassPath для объявления моих зависимостей внутреннего пакета
3), создайте JNnit-тестовые прогоны как пользовательскиецели
4) создать другие цели для создания различных проектов
5) наконец, перед выпуском создать большую цель "dist" для упаковки всего программного обеспечения
Итак, мои 2 вопроса:
Является ли этот мой план хорошим (с точки зрения времени разработки и разумной сложности)?
Есть ли недостатки при использовании 1 большого файла сборки?Я прочитал часть Ant в книге Action, но похоже, что несколько файлов сборки просто вызывают больше сложностей (объявлять зависимости между проектами нелегко. OTH с 1 большим файлом, я могу использовать целевой атрибут target).