IntelliJ IDEA: Maven, компиляция и развертывание проекта

Может кто-нибудь объяснить мне IntelliJ IDEA рабочий процесс компиляции, развертывания и упаковки с привязанным проектом maven?

Я столкнулся с некоторым недоразумением, когда я запускаю сервер tomcat через режим отладки IDEA. Например, у меня есть один артефакт - военный архив. Как я понимаю, когда я запускаю режим отладки - IDEA перекомпилирует и обновляет измененный код в war-archive.

Но что происходит с упакованным артефактом maven? Обновляет ли IntelliJ его? Или мне нужно установить опцию "Buld maven before startup", чтобы убедиться, что измененный код будет загружен в среду?

Ответ 1

Intelli J не использует maven для создания проекта, который использует собственный процесс сборки. Он использует файл pom в качестве описания проекта.

Это означает пару вещей, если вы хотите создать артефакт, такой как военный файл при работе в tomcat, тогда вам нужно только сказать IntelliJ, чтобы построить войну в диалоговом окне "Run/Debug Configurations". IntelliJ автоматически создаст любые артефакты, которые вы указали на вкладке развертывания конфигурации прогона/отладки. Поэтому, если вы укажете взорванную войну, она построит взорванную войну, если вы укажете регулярную войну, она будет строить регулярную войну.

Иногда люди должны запускать пользовательские плагины или создавать цели, и в этом случае вы можете настроить IntelliJ для запуска пользовательских целей maven.

Вы также можете сказать intellIJ, чтобы запустить цель пакета maven, а не строить артефакт. IntelliJ будет развертывать все, что находится под целевым каталогом, для tomcat.

Важным ответом является то, что IntellIJ использует две отдельные системы сборки. Вы должны сказать каждой системе сборки, что делать. И вам нужно сказать IntelliJ, который строит систему для использования для чего. IntelliJ по умолчанию будет использовать свою собственную систему сборки после импорта проекта, если вы не скажете ему использовать maven для чего-то.

В то время как IntelliJ будет строить артефакт, указанный вами в файле pom, он не будет делать такие вещи, как развернуть их репозиторий артефактов (локальный или другой мудрый), если вы не нажмете на цель развертывания в окне инструментов Maven.

Кроме того, если вы измените свой файл pom и не включите автоматическое повторное импортирование, эти изменения не будут отражены в вашем проекте, пока вы не нажмете параметр принудительного повторного импорта из окна инструментов maven.

Ответ 2

Я думаю, вы ищете это.

Плагин Maven IDEA

Плагин IDEA используется для создания файлов (ipr, iml и iws) для проекта, поэтому вы можете работать с ним с помощью IDE, IntelliJ IDEA.

Надежды, которые помогают