![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
Имеется несколько модулей, фактически сорсы расположены просто в разных папках, в модулях имеется взаимное использование кода, причем выделять это в общий модуль проблемотично.
Хотелось бы иметь возможность сборки всего проекта и отдельно по модулям. Как собирать и компилить такие взаимозависимые модули с помошью ANT? всем спасибо. |
|||
|
||||
| Nobody |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 2 Всего: 16 |
Никак.
-------------------- |
|||
|
||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 5 Всего: 77 |
Надо писать свой скрипт.
Модули складывать, к примеру, в соседних папках, папкам давать нормальные имена. В каждом модуле в файле пропертис указывать список depends on модулей(пути к их папкам). При сборке, проходить по зависимостям, и собирать всё в куче. Главное, не попади в рекурсию, если по очереди собират ьбудешь -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
если собирать все в куче, то можно и не указывать зависимости. Зависимости, понимается, допускаются только в одну сторону. В итоге выход один - сборка взаимозависимых модулей в куче. |
|||
|
||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 5 Всего: 77 |
Тогда при любой сборке придётся включать ВСЁ. А если надо один подмодуль - то к нему подтянутся лишь необходимые части из других модулей. Наиболее общее(тысызыть, фреймворки системы) - разбить на части и разложить по кускам. И подключать. Ну а если ВСЁ очень сильно завязано - тогда как ни крути, при сборке чего угодно будет тянуться основная масса -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| redrick |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 547 Регистрация: 7.1.2004 Где: Москва Репутация: 1 Всего: 5 |
давеча собирал проект под линукс. Там, как известно, все это делается через make.
Можешь поискать по этой теме - линуксоиды много и поделу написали. Общая идея узвучена chief39 -------------------- Имею Мнение Хрен Оспоришь |
|||
|
||||
| Skipy |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: нет Всего: 16 |
Вопрос номер раз. Зачем приложение разделено на модули, если связи у них - двусторонние? Вопрос номер два. Сборка по модулям предполагает независимость этих самых модулей. Как Вы это представляете в случае если модули зависимы? В общем, либо Вы собираете все кучей, либо перерабатываете модули и вычленяете ядро, от которого зависят все остальные части. Тогда сборка каждой из частей повлечет за собой только сборку ядра. |
|||
|
||||
| coolin |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
Двусторонние связи имеют свойство возникать в больших проектах.
сборка кучей решает проблему, далее возможна сборка по модульно, подключая ранее собранные либы. а есть на примене концепции как вычленять ядро безболезненно, не нарушая логики? проблема думаю частая - разделять проект на модули |
||||
|
|||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 5 Всего: 77 |
Тогда нет смысла выделять в отдельные подмодули - два таких подмодуля сливаются в один. Всё равно надо построить структуру модулей, разбить по возможности, прописать зависимости и избежать двусторонностей. И потом уже физически разбить.
Ну вот у нас выделено ядро. Которое тоже кусками. -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| Skipy |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: нет Всего: 16 |
Это задача архитектора. Если возникла двусторонняя связь - значит, архитектор где-то сработал неправильно. А как вычленять ядро - зависит опять-таки от архитектора. Грамотно нарисовать систему, связи между частями. Опыт, опыт и еще раз опыт. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java tools & IDE's | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |