Как использовать Mercurial, Maven и Eclipse вместе?

в настоящее время я работаю над проектом Java в команде из 5 коллег по университету. Фактически, мы завершим этап планирования в течение следующих нескольких дней, а затем приступим к реализации.

для проекта мы должны использовать Mercurial (через Bitbucket.org) и Apache Maven. Мы хотели бы использовать Eclipse в качестве IDE. Я знаю, как использовать Mercurial, и я прочитал несколько статей и руководств о Maven. Чего я не понимаю, как мы должны использовать эти инструменты в сотрудничество.

Что следует разместить в репозитории? Весь проект Eclipse? Или только исходные файлы и pom Maven.в XML? Если последнее, то как будет выглядеть рабочая сессия? Вытащите файлы, создайте проект Eclipse с mvn eclipse:eclipse, кодируйте некоторое время и зафиксируйте/нажмите их на репо?

Я отвечаю за создание структуры проекта, поэтому мои коллеги - и я тоже - могут начать развиваться. Но я действительно не знаю, с чего начать. Если польза Maven не был обязательным, я просто поместил бы проект Eclipse в репозиторий. Но, используя его, я совершенно запутался, как if влияет на все.

2 ответов


Я использую аналогичную настройку, за исключением того, что я использую Dropbox для своего репозитория (только два разработчика). Просто выполните следующие действия, с m2eclipse (обновление сайта:http://m2eclipse.sonatype.org/sites/m2e) и MercurialEclipse (обновление сайта:http://cbes.javaforge.com/update) плагин вы можете сделать все в eclipse.

создать проект maven:

Файл - > Создать - > Другое - > Maven проект

в Project explorer щелкните правой кнопкой мыши на новом созданном проекте maven

Команда - > Поделиться Проектом... - >Mercurial - > (оставьте папку как есть) Finish

создать .файл hgignore в корне проекта:

в Project explorer щелкните правой кнопкой мыши на новом созданном проекте maven

Создать - > Файл - > Имя Файла: .hgignore и Финиш

.hgignore:

syntax: regexp
target      # maven output
\.classpath # eclipse
\.project   # eclipse
\.settings  # eclipse
test-output # eclipse junit/testng plugin output

тогда вы можете сделать свой первый коммит, но будьте осторожны, hg не хранит пустые папки в своем репозитории, поэтому, чтобы сохранить структуру папок maven без исходного кода в ней, вы должны поместить (пустой) файл в каждую пустую папку, для простого проекта maven без каких-либо источников он будет находиться в папки:

  • myproject/src/main / java
  • myproject/src/main / resources
  • myproject/src/test / java
  • myproject/src/test / resources

например, я помещаю файл с именем .пустой в нем с содержимым "это файл-заполнитель, удалить, если другие файлы находятся в этой папке"

Если некоторые из этих папок отсутствуют, ваши коллеги увидят ошибки в eclipse, если они импортируют ваш проект.

первый коммит:

в Project explorer щелкните правой кнопкой мыши на новом созданном проекте maven


вот альтернативы, основанные на практике в ASF (хотя мы не используем Mercurial).

для начала настройте исходное дерево с Maven build, которое вы проверяете в Hg. Пока не трогайте eclipse. Вы захотите найти плагин Eclipse для Hg.

затем посмотрите на две альтернативы:Maven-eclipse-плагин и M2eclipse.

плагин maven-eclipse-это плагин maven. Вы запускаете его из командной строки, и он генерирует .проект и. classpath и некоторые .настройки. Это в настоящее время не ведутся работы, но это довольно стабильный и функциональный во многих общих случаях. Затем вы можете импортировать существующий проект Eclipse, и вы хорошо идти.

M2Eclipse-это затмение плагин, который объединяет сборки Maven. Это довольно амбициозно. Тем не менее, текущий аватар довольно новый и может быть полон сюрпризов.