Найти тему

WAR и Uber-JAR в Spring Boot

Статья подготовлена для студентов курса «Разработчик на Spring Framework» в образовательном проекте OTUS.

Как известно, по умолчанию Spring Boot-приложения пакуются в Uber-JAR со всеми зависимостями и embedded сервлет-контейнером (Tomcat, Jetty, Undertow). С таким форматом приятно и удобно работать, ведь Uber-JAR просто разрабатывать, распространять и деплоить.

Но, как это часто бывает, за всё нужно платить. Дело в том, что Uber-JAR имеет некоторые ограничения, например, отсутствует поддержка JSP. В итоге получается, что если вы используете Uber-JAR, вам приходится отказываться от всех JSP. То есть, если у вас старый проект с JSP (JavaServer Pages), ожидайте сложностей с миграцией.

Однако данная проблема решается просто, ведь Uber-JAR опционален. Следовательно, вы всегда можете создать обычный WAR (Web Application Resource — формат файлов, используемый для распространения Java web-приложений и объединения JSP-файлов).

В Spring Boot это можно сделать, например, так:

-2

Кроме того, соответствующая опция есть и в Spring Initializr:

-3
Подключайтесь 10 февраля в 20:00 (мск) к открытому уроку «Неизвестный Spring: быстрая разработка приложений».
На вебинаре окунётесь в необычный мир Spring Roo и узнаете про альтернативный путь развития Spring.