|
Модераторы: LSD, AntonSaburov |
|
||
|
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
Просьба отмечать, только те пункты которые реально используются. Т.е. если вы когда-то разбирались с Maven, а потом его забросили, то не надо отмечать этот пункт.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
После Maven уже ничем не хочется пользоваться
|
|||
|
||||
AlexeyVorotnikov |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 1 Всего: 18 |
После Maven хочется закинуть его куда подальше и больше никогда не видеть. (ИМХО) -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
||||
|
||||
AlexeyVorotnikov |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 1 Всего: 18 |
Может, я просто уже постарел и закоснел мозгом , но я просто даже не понял концепции этого Maven'а. Я не понял как им собирать проекты. А пользуюсь я для предварительной сборки и тестирования сборщиками IDE, которыми пользуюсь. Для финишной сборки Ant. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
Maksym |
|
|||
. Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 12 Всего: 62 |
AlexeyVorotnikov
Maven незаменим, если ты пишешь open-source - собственно для него он и был придуман. А Ant хорош всегда |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
А если исходники закрыты, то maven теряет свою силу? Думаю maven удачно ложиться на проекты где поддерживается Continuous Integration, избавляет от большого количества рутинной работы по написанию билд скриптов. Лично мне он нравится в связке с Hudson. |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Maksym |
|
|||
. Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 12 Всего: 62 |
Мне показалось, что мавен хорош, когда ты однозначно хочешь иметь всегда последние версии всех зависимостей, что характерно для опенсорса. Если же ты разрабатываешь свой коммерческий продукт (или дорабатываеш чужой продукт), то миграция на новые версии зависимостей -- это событие, которое идет отдельной задачей с ручным исправлением скриптов, перетестированием (в том числе и ручным) и т.п. Я использовал мавен только в одном небольшом проекте, возможно не вкурил в его сакральный смысл. С другой стороны, не вижу в работе с антом большой рутины. Вот на днях полную сборку (c вариантами дистрибутивов) для трех десятков проектов в которые входят earы и warы знающий человек написал за день.. Очень читабельно, гибко и прозрачно получилось. Кстати, тоже используем Hudson. Не мог бы ты уточнить каким образом мавен освобождает от написания билд скриптов (на фоне анта)? Действительно интересно услышать практическое мнение. Это сообщение отредактировал(а) Maksym - 29.11.2009, 14:14 |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Не хотелось бы уходить в дискуссию Maven vs Ant, думаю таких в сети и так достаточно. Но на вопрос отвечу.
Для того, что бы создать Java проект в maven мне нужно выполнить одну команду (archetype). Будь это просто Java Project, будь это Web Project или EJB Project, или что-то иное - всего одна команда в консоли для создания проекта. После этого любой проект будет компилироваться, тестироваться, упаковываться в архив и станет доступен другим проектам без какого-либо вмешательства в билд-скрипт. Просто добавляем новые классы, ресурсы и тесты в соответствующие папки, выполняем install и все. Мне не нужно прописывать где лежать исходники, где лежат ресурсы, что их нужно компилировать какой-либо командой, что их нужно скопировать из папки А в папку Б, а потом папку Б запаковать в архив Б.jar (war, ear и т.п.), а потом скопировать архив куда-либо (хотя я могу это все настроить, если захочу). Maven проект можно открыть в любой популярной IDE (Eclipse, NetBeans, IDEA) без каких-либо настроек начать работать (собирать, тестировать, отлаживать) в привычном ритме. Если в вашем проекте maven, то разработчики могут кодировать в любимой IDE, а не пересаживаться на одну (хотя и с ant это возможно, но телодвижений меньше с maven). И это лишь малая часть того что может сделать maven. Про управление зависимостями, мультимодульные проекты, большое количество самых разнообразных плагинов (для репортинга, код чекинга, сбора метрик, ковереджа, деплоинга и т.д.) я даже и не говорю. Еще есть важная для меня особенность maven: pom.xml имеет определенную структуру. А это означает, что если один человек напишет такой скрипт, то другой, зная maven, может с легкостью его модифицировать. Не тратить время на осознание креатива своего коллеги (какой таргет, для чего и когда выполняется), который целый день строчил ant-скрипт, и, который возможно, написан с ошибками. Вы конфигурируете билд скрипт, а не создаете его. Я считаю, что maven билд скрипты более контролируемые, и это несет с собой порядок. Это сообщение отредактировал(а) powerOn - 29.11.2009, 21:33 |
|||
|
||||
Maksym |
|
|||
. Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 12 Всего: 62 |
||||
|
||||
Zefick |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 3.12.2009 Репутация: нет Всего: 2 |
А можно подробнее, зачем нужен сборщик проектов, чтобы в архив упаковать class-файлы? Тогда я использую либо IDE, либо сам руками пихаю, если бывает такая нужда (например, NetBeans не сжимает архивы, или я не знаю, как это сделать, а в Eclipse чтобы собрать проект надо в настройках покопаться).
|
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
Это для приложений начального уровня, сборка ограничивается упаковкой классов. В более сложных проектах надо: - сгенерировать классы - скомпилировать классы - сгенерировать JavaDoc - упаковать скомпилированные классы в несколько разных jar (например API и реализация) - отфильтровать конфигурационные файлы - создать деплоймент архивы (war, ear) - создать инсталятор или distribution архив - прогнать Unit тесты - прогнать интеграционные тесты - загрузить артефакт на сервер - закомитить код в VCS и потегать его - и еще куча всего про что я забыл Делать это из под IDE: не удобно, т.к. у разных разработчиков она может быть разная, и нельзя автоматизировать этот процесс. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Vaulter |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1724 Регистрация: 30.12.2002 Где: бункер Репутация: нет Всего: 22 |
||||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
Hudson - это другое. Hudson сам по себе ничего не собирает, для сборки он использует ANT, Maven или shell script.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Мне вот интересно, те кто ответил "с помощью IDE" у вас командная разработка или индивидуальная (только изучаете, или фрилансингом занимаетесь)? Если командная, то сколько человек в команде и по какому процессу вы работаете?
|
|||
|
||||
AlexeyVorotnikov |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 1 Всего: 18 |
У нас в команде обычно от 2-х до 5-и человек. А что вы имеете в виду под "процессом"? -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Имею ввиду процесс организации разработки, например Scrum или RUP, или еще какой-нибудь... Добавлено через 7 минут и 42 секунды Да, еще важный момент, опять же только для тех кто делает билд из IDE и работает в команде. Распределенная ли команда или все в одном офисе сидят? |
|||
|
||||
AlexeyVorotnikov |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 1 Всего: 18 |
У нас никакие такие формализованные процессы не используются. Команды у нас бывают распределённые. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
serger |
|
|||
Опытный Профиль Группа: Участник Сообщений: 518 Регистрация: 19.6.2007 Где: Ижевск Репутация: 1 Всего: 5 |
Странно. А IDE все одну используете? -------------------- упс! |
|||
|
||||
COVD |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 6 Всего: 43 |
Мы компилируем "с помощью IDE". У нас много относительно мелких проектов. Большая часть из них используются в виде библиотек. Многие проекты для серверной части уже представляют собой самостоятельные приложения, которые по сути являются сервисами, обслуживающими одну задачу. Сейчас изменения в библиотеках случается затрагивают другие проекты и их приходится вручную перекомпилировать. Клиентское приложение загружается через веб-старт и представляет собой несколько десятков jar'ов. При изменениях на сервер выкладываются только обновленные jar'ы. Команда маленькая ( < 5 ), никаких "процессов" не знаем, сидим в офисе, хотя используем репозиторий и технически можно все делать удаленно. Пока я не чувствую острой необходимости отказываться от "помощи IDE". Мы продолжаем "дробить" систему на мелкие компоненты и есть желание перевести клиентское приложение на плагинно-модульную архитектуру. В общем, у нас пока не индустриальный масштаб, не цех и не конвейер, а "свечной заводик".
ЗЫ. сейчас все используют одну IDE, но это не принципиально, потому что в репозитории сурс есть. При разных IDE форматирование кода иногда сбивается. Это сообщение отредактировал(а) COVD - 24.12.2009, 17:00 |
|||
|
||||
AlexeyVorotnikov |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 1 Всего: 18 |
Да, фактически одну - Eclipse. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
А мне вот интересно послушать людей которые ответили "руками (в консоли или bat/sh файлами)". Что за проекты они так собирают, сколько у них разработчиков и т.д.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Dancer |
|
|||
Опытный Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: нет Всего: 37 |
выбрал руками, так как скриптовые вещи представленны были только там.
Продукт собирается кучей Makefile и sh. Код разношорстный входит: Java/C/C++/sh получаем rpm продукта. Разработка удалённая, разработчиков полно по миру раскиданы. Но конечно выделены билдовые сервера, на которых по расписаниям, или по запросам, на выпуск релиза делается билд. Процесс разработки ПО строго формализован. По конечному продукту проходят обязательные циклы тестирования: интеграционное, системное, филд-тест. До того как изменения от разработчика попадут в интеграцию, разработчик гоняет юнит-тесты, и много ещё других процедур, чтобы подать свой код, как кандидат на интеграция в ту или иную ветку продукта. -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
А Java компилируете javac-ом и Unit-тесты запускаете руками?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Dancer |
|
|||
Опытный Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: нет Всего: 37 |
Да. Компилим javac-ом, скриптами пускаются и тесты.
-------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
А есть ли люди которые используют Ant + Ivy?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
у нас используют в компании достаточно активно. |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 15 Всего: 537 |
А репозиторий какой для него используете?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
в локальной сети стоит сервер, на который ручками ставятся версии нужных библиотек. ivy использует его, без какого-либо доступа к внешним ресурсам.
|
|||
|
||||
Правила форума "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. |