Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java tools & IDE's > Подобие солюшн в J2EE-проектах |
Автор: Entry_N3 5.11.2008, 13:17 |
Привет. Есть желание настроить j2ee-проект для Eclipse и поместить его в систему хранения исходников. При этом есть желание добиться эффекта как MS-солюшнах: любой разработчик берет проект и ему ничего не надо настраивать (сразу запустил на компиляцию, не надо указаывать, где папка с исходным кодом, а где просто с документами). Как воплотить желание в реальность? Идеи? Спасибо. |
Автор: powerOn 5.11.2008, 14:13 |
ant, maven один раз пишется билд скрипт. |
Автор: fixxer 5.11.2008, 14:43 |
а в случае мавена может и вообще ничего не пишется, а выбирается нужный архетип. |
Автор: Entry_N3 5.11.2008, 15:09 |
powerOn, fixxer, т.е. это будет похоже на солюшн как в M$? Eclipse тут не при чем? |
Автор: fixxer 5.11.2008, 15:50 |
Я не знаю как там в солюшенах, но Eclipse, действительно, совершенно не при чем. |
Автор: Entry_N3 5.11.2008, 17:32 |
Можете описать, что есть maven (google не предлагать, там не опыта)? |
Автор: Shurr 5.11.2008, 17:45 |
Entry_N3, Если интересует только сборка - тогда, как уже писали выше, ant или maven. Для работы с кодом нужно положить в vcs эклипсовые файлы настроенного проекта. |
Автор: Entry_N3 5.11.2008, 18:35 |
"эклипсовые файлы настроенного проекта" - это какие? |
Автор: Entry_N3 5.11.2008, 19:31 |
powerOn, так решено договориться, что все на Eclipse. И мечта просто взять проект (импорнуть) и все настроено сразу. |
Автор: powerOn 5.11.2008, 19:37 |
ну а как насчет continuous integration? автоматизации билдов (cruise control какой-нибудь)? ... или у вас несерьезный проект? |
Автор: fixxer 5.11.2008, 23:57 |
powerOn, +1 Entry_N3, с помощью мавеновских плагинов можно генерировать проект для нужной IDE. |
Автор: Entry_N3 6.11.2008, 14:48 |
powerOn, fixxer, прислушаюсь. Shurr, "эклипсовые файлы настроенного проекта" - это какие? |
Автор: Shurr 7.11.2008, 18:58 |
Entry_N3, Конфигурационные файлы, создаваемые эклипсом для проекта. Файлы ".project", ".classpath", возможно папка "settings" и пр. Настрой проект в эклипсе, и посмотри что он создаст. |
Автор: alexsmirnov 8.11.2008, 08:45 |
Вообще, для Java желательно изначально использовать системы вроде ANT или Maven для построения проектов, не привязываясь к конкретной Ide. Разные разработчики могут использовать разные IDE, разные версии, да и просто иметь свои предпочтения по настройкам. Плюс, привязка к IDE усложняет continuous integration - на сервере использовать настройки проблематично. Мы используем следующую структуру : - SVN в качестве репозитория. - Maven ( http://maven.apache.org ) в качестве build tool. - Для разработки используется в основном Eclipse. Каждый может импортировать проект через плагин ( в основном m2eclipse ) или через команду того-же maven. Для Netbeans или Idea - аналогично. Настройки IDE и рабочие папки помечены как svn:ignore, каждый волен настраивать как хочет. - Для регулярных билдов используется Hudson ( https://hudson.dev.java.net/ ). Сборка на нем запускается в максимальной конфигурации, со всеми тестами, javadoc и отчетами ( findbugs, checkstyle, PMD, test coverage ). Все косяки видны сразу. - Результаты сборки в Hudson публикуются в корпоративном репозитории ( Nexus, http://nexus.sonatype.org/ ). Этот же репозиторий используется как proxy - то есть если проект ссылается на какую-то библиотеку, она грузится через inet только 1 раз. Далее только по локальной сети, т.е. быстро. Если кто-то работает только с отдельным модулем ( например, web-девелопер или EJB ), ему не надо собирать весь проект локально - можно использовать результат с сервера. - Ошибки сборки сразу попадают в Jira. Она также настроена на связь с SVN - если в комментарии commit сослаться на конкретный task, то список сразу добавится к аомментариям. У Maven есть достоинства и недостатки, но мне кажется для коллективной разработки он заточен лучше всего : 1) Систама управления библиотеками и зависимостями. Ни одного Jar в репозитории кода или в проекте, никаких проблем с версиями и зависимостями. 2) Фиксированная структура проектов, легче разбираться и поддерживать порядок. 3) иерархия настроек, нечто вроде наследования в OOP. На всю фирму есть один корневой проект, в котором настроены типовые конфигурации, отчеты, стили etc. все остальные на него ссылаются. P.S. В любом проекте всегда выделяется роль "build engeneer", кто отвечает за настройки сборки. |
Автор: v2v 8.11.2008, 19:39 |
alexsmirnov, Красота!! |
Автор: Entry_N3 11.11.2008, 11:40 |
alexsmirnov, ![]() |