Запуск Spring Boot приложения

Одним из самых больших преимуществ упаковки вашего приложения в виде jar-файла и использования встроенного HTTP-сервера является то, что вы можете запускать свое приложение так же, как и любое другое. Отладка приложений Spring Boot также проста. Вам не нужны никакие специальные плагины IDE или расширения.

Этот пост касается только упаковки в jar. Если вы решили упаковать свое приложение в файл war, вам следует обратиться к документации по вашему серверу и IDE.

Запуск из IDE

Вы можете запустить приложение Spring Boot из IDE как простое Java приложение. Однако сначала вам нужно импортировать ваш проект. Этапы импорта зависят от вашей IDE и системы сборки. Большинство IDE могут импортировать проекты Maven напрямую. Например, пользователи Eclipse могут выбрать «Импорт… → Существующие проекты Maven» из меню «Файл».

Если вы не можете напрямую импортировать свой проект в IDE, вы можете создать метаданные IDE с помощью подключаемого модуля сборки. Maven включает плагины для Eclipse и IDEA. Gradle предлагает плагины для различных IDE.

Если вы случайно запустили веб-приложение дважды, вы увидите ошибку “Port already in use” («Порт уже используется»). Пользователи STS могут использовать кнопку «Перезапустить» вместо кнопки «Выполнить», чтобы убедиться, что любой существующий экземпляр закрыт.

Запуск в виде упакованного приложения

Если вы используете Spring Boot Maven или Gradle плагины для создания исполняемого файла jar, вы можете запустить свое приложение, используя java -jar, как показано в следующем примере:

$ java -jar target/myapplication-0.0.1-SNAPSHOT.jar

Также возможно запустить упакованное приложение с включенной поддержкой удаленной отладки. Это позволяет подключить отладчик к упакованному приложению, как показано в следующем примере:

$ java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n \
       -jar target/myapplication-0.0.1-SNAPSHOT.jar

Использование Maven плагина

Spring Boot Maven плагин включает цель run, которую можно использовать для быстрой компиляции и запуска приложения. Приложения запускаются в разобранном виде, как в вашей IDE. В следующем примере показана типичная команда Maven для запуска приложения Spring Boot:

$ mvn spring-boot:run

Вы также можете использовать переменную среды операционной системы MAVEN_OPTS, как показано в следующем примере:

$ export MAVEN_OPTS=-Xmx1024m

Использование Gradle плагина

Spring Boot Gradle плагин также включает в себя задачу bootRun, которую можно использовать для запуска приложения в разобранном виде. Задача bootRun добавляется всякий раз, когда вы применяете плагины org.springframework.boot и java, и отображается в следующем примере:

$ gradle bootRun

Вы также можете использовать переменную среды операционной системы JAVA_OPTS, как показано в следующем примере:

$ export JAVA_OPTS=-Xmx1024m

Горячая замена (Hot Swapping)

Поскольку приложения Spring Boot представляют собой простые Java-приложения, горячая замена JVM должна работать «из коробки». Горячая замена JVM несколько ограничена байт-кодом, который она может заменить. Для более полного решения можно использовать JRebel.

Модуль spring-boot-devtools также включает поддержку быстрого перезапуска приложения.


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки