Материал предоставлен https://it.rfei.ru

Создание проекта

В этом разделе Вы потренируетесь в создании проектов на Scala.

План действий

  1. Создаем проект с помощью системы автоматизации сборки Maven:

    • запускаем мастер генерации проекта Maven Archetype Plugin:

      mvn archetype:generate
    • выбираем шаблон (archetype);
    • указываем координаты проекта.
  2. Помещаем проект под контроль версий:

    • инициализируем Git-репозиторий:

      git init
    • добавляем файл .gitignore;
    • добавляем файлы проекта под контроль версий:

      git add -A
    • создаем первоначальную ревизию:

      git commit -m "Initial commit"

Почему следует использовать Maven для создания проекта?

Несмотря на то, что существует много способов создания проекта, мы рекомендуем Вам всегда использовать Maven для создания и сборки проекта.

  1. Maven — это кросс-платформенный инструмент: Вы можете выполнять сборку одного и того же проекта на различных компьютерах с разными операционными системами без каких-либо модификаций исходных кодов, например, на рабочем и домашнем компьютерах, ноутбуке, а также на тестовых и производственных серверах.
  2. Программисты, участвующие в разработке, могут предпочитать различные IDE. Создавая и собирая проект с помощью Maven, Вы избегаете навязывания разработчикам тех или иных средств работы над проектом. Напротив, если Вы создаете проект с помощью IDE, Вы не оставляете другим разработчикам выбора: собирать проект с помощью другой IDE без модификации исходных файлов проекта невозможно.
  3. Проект можно создать полностью вручную — такой способ обеспечивает наибольший контроль, однако подразумевает множество однотипных шаблонных операций. Помимо этого на определенном этапе Вам понадобится кросс-платформенный инструмент для сборки; перевод существующего проекта на какую-либо систему автоматизации сборки может вызвать существенные сложности — гораздо лучше использовать систему сборки с самого начала.

Почему не следует использовать IDE как основное средство сборки проекта?

Многие программисты, особенно приверженцы технологии .NET, предпочитают использовать IDE для сборки своих проектов. Действительно, сборка «нажатием одной кнопки» в той же среде, в которой происходит разработка, гораздо удобнее, чем переключение на терминал и ввод команд с клавиатуры.

Однако, несмотря на очевидное удобство, оставлять IDE в качестве основного инструмента сборки нецелесообразно по нескольким очевидным причинам.

  1. Не все разработчики предпочитают одну и ту же IDE. Если сборка проекта основана на IDE (в особенности — на коммерческой IDE), то другие участники разработки попросту не смогут собрать проект.
  2. Метаинформация, которую IDE хранит вместе с проектом, полностью зависит от конкретного окружения: расположения файлов на компьютере, имени пользователя, пути к проекту и прочих аспектов. Даже если другие разработчики используют ту же самую IDE, файлы метаинформации будут меняться при каждом коммите, а все остальные участники разработки будут вынуждены импортировать проекты заново.
  3. В отдельных случаях Вам может понадобиться осуществить сборку в среде без поддержки графического пользовательского интерфейса (например, при работе с удаленным сервером по SSH). Использование IDE как основного средства сборки полностью исключает возможность работы с проектом в подобных сценариях.

Исходя из этих соображений, мы рекомендуем:

  • всегда исключать файлы IDE из контроля версий (см. Файл .gitignore);
  • иметь основной инструмент автоматизации сборки, который не привязан к GUI и к конкретному окружению (Apache Maven полностью удовлетворяет этому условию);
  • использовать IDE как вспомогательный инструмент сборки на локальной машине — это особенно полезно при отладке;
  • всегда проверять сборку проекта с помощью основного инструмента перед коммитами.
Выбор IDEКоординаты проекта