20 самых популярных вопросов на собеседовании Maven & Ответы

Anonim

Скачать PDF

1) Объясните, что такое Maven? Как это работает?

Maven - это инструмент для управления проектами. Он предоставляет разработчику полную структуру жизненного цикла сборки. При выполнении команд Maven он будет искать файл POM в Maven; он запустит команду на ресурсах, описанных в POM.

2) Перечислите, какими аспектами управляет Maven?

Maven обрабатывает следующие действия разработчика

  • Строить
  • Документация
  • Составление отчетов
  • Зависимости
  • СКМ
  • Релизы
  • Распределение
  • Список рассылки

3) Упомяните три жизненных цикла сборки Maven?

  • Очистить: очищает артефакты, созданные предыдущими сборками.
  • По умолчанию (сборка): используется для создания приложения.
  • Сайт: Для проекта формируется документация по сайту.

4) Объясните, что такое ПОМ?

В Maven POM (объектная модель проекта) является основной единицей работы. Это XML-файл, в котором содержится информация о проекте и сведения о конфигурации, используемые Maven для создания проекта.

5) Объясните, что такое артефакт Maven?

Обычно артефакт - это файл JAR, который помещается в репозиторий Maven. Один или несколько артефактов, которые создает сборка maven, например, скомпилированный JAR и исходный файл JAR.

Каждый артефакт включает идентификатор группы, идентификатор артефакта и строку версии.

6) Объясните, что такое репозиторий Maven? Какие их типы?

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

Их типы бывают местные, центральные и удаленные.

7) Почему используются плагины Maven?

Плагины Maven используются для

  • Создайте файл jar
  • Создать файл войны
  • Скомпилировать файлы кода
  • Модульное тестирование кода
  • Документирование проектов
  • Составление отчетов

8) Вывести список зависимостей в Maven?

В Maven используются различные области зависимости:

  • Компиляция: это область действия по умолчанию, и она указывает, какая зависимость доступна в пути к классам проекта.
  • При условии: указывает, что зависимость предоставляется JDK, веб-сервером или контейнером во время выполнения.
  • Время выполнения: это говорит о том, что зависимость не требуется для компиляции, но требуется во время выполнения.
  • Тест: в нем говорится, что зависимость доступна только для фаз компиляции и выполнения теста.
  • Система: указывает, что вы должны указать системный путь
  • Импорт: это указывает на то, что идентифицированный или указанный POM должен быть заменен зависимостями в этом разделе POM.

9) Упомяните, как в Maven указываются профили?

Профили указываются в Maven с использованием подмножества элементов, существующих в самом POM.

10) Объясните, как можно исключить зависимость?

Используя элемент исключения, можно исключить зависимость

11) Упомяните разницу между Apache Ant и Maven?

Apache Ant Maven

  • Ant - это набор инструментов - Maven - это фреймворк
  • Ant не имеет формальных соглашений, таких как структура каталогов проекта - у Maven есть соглашения
  • Ant - процедурный; вы должны указать компилировать, копировать и сжимать - Maven декларативен (информация о том, что и как создавать)
  • У Ant нет жизненного цикла; вам нужно добавить последовательность задач вручную - у Maven есть жизненный цикл
  • Скрипты Ant нельзя использовать повторно - плагины Maven можно использовать повторно

12) Как в Maven называются два файла настроек и каково их расположение?

В Maven файлы настроек называются settings.xml, а два файла настроек находятся в

  • Каталог установки Maven: $ M2_Home / conf / settings.xml
  • Домашний каталог пользователя: $ {user.home} / .m2 / settings.xml

13) Перечислите, какие этапы сборки в Maven?

Фазы сборки в Maven

  • Подтвердить
  • Компилировать
  • Тест
  • Упаковка
  • Установить
  • Развертывать

14) Перечислить каталог сборки, исходного кода и тестового исходного кода для POM в Maven?

  • Сборка = Цель
  • Источник = src / main / java
  • Тест = SRC / основной / тест

15) Где вы найдете файлы классов при компиляции проекта Maven?

Вы найдете файлы классов $ {basedir} / target / classes /.

16) Объясните, что будет делать цель «jar: jar»?

jar: jar не будет перекомпилировать исходники; это будет означать просто создание JAR из каталога target / classes, учитывая, что все остальное было сделано

17) Перечислите, каков порядок наследования Maven?

Порядок наследования maven:

  • Родитель Пом
  • Проект Пом
  • Настройки
  • Параметры интерфейса командной строки

18) Какие минимально необходимые элементы для ПОМ?

Минимальные обязательные элементы для POM - это корень проекта, modelVersion, groupID, artifactID и версия.

19) Объясните, как можно создавать отладочные данные выполнения или сообщения об ошибках?

Чтобы получить результат отладки выполнения, вы можете вызвать Maven с параметром X или параметром e.

20) Объясните, как запускать тестовые классы в Maven?

Чтобы запускать тестовые классы в Maven, вам нужен надежный плагин, проверьте и настройте свои параметры в settings.xml и pom.xml для свойства с именем «test».