Могу ли я указать собственные методы жизненного цикла в mvn - PullRequest
0 голосов
/ 07 мая 2020

Я ежедневно работаю с Node Package Manager (npm) и хотел узнать, можно ли указать собственные методы жизненного цикла в mvn, подобные npm. Например, я могу указать npm start для выполнения любого набора команд, который мне нужен. Точно так же я хочу настроить mvn start для запуска mvn spring-boot:run -D"spring-boot.run.profiles=local

Возможно ли это сделать. В противном случае я думал создать псевдоним для того же самого в bash

1 Ответ

0 голосов
/ 07 мая 2020

Maven поддерживает настройку жизненного цикла, аналогично Node Package Manager, но с прямо противоположной точкой зрения относительно написания сценариев. Таким образом, вы не найдете прямого эквивалента npm-scripts с записью start и значением по умолчанию, установленным для вызова node и передачи ссылки на сценарий server.js (просто предупреждение о несходстве этого ключа).

Но Maven предоставляет альтернативные наборы инструментов, которые имеют такое же фундаментальное поведение и назначение:

Подобно npm, все в Maven основано на центральном жизненном цикле сборки intro , четко определенный упорядоченный набор из phase элементов (примеры: process-resources, compile, test, package), каждый из которых представляет собой отдельный шаг в жизненном цикле сборки ядра ref .

Кроме того, каждый phase связан с одним (или несколькими) компонентами Maven Plugin плагинами , которые позволяют настраивать процесс сборки (примеры: clean, compiler, resources, jar, ear, checkstyle, javadoc), включая те, которые поддерживают: развертывание, конфигурация, запуск ( очень похоже на npm start) и остановку контейнеров времени выполнения, таких как cargo (для контейнеров J2EE) или * 1 038 * (наиболее широко используемый контейнер веб-приложений). По своей сути Maven - это, по сути, среда выполнения плагинов, вся работа выполняется плагинами, настраиваемая активность жизненного цикла основана на конфигурации плагина и определяется в конфигурации плагина build или в плагине reporting конфигурации plugin-config .

...