Spring Boot инструменты разработчика: автоматический перезапуск - логи, исключение ресурсов, выключение рестарта

Регистрация изменений в оценке состояния

По умолчанию при каждом перезапуске приложения регистрируется отчет, показывающий дельту оценки состояния. В отчете показаны изменения в автоконфигурации вашего приложения, когда вы вносите такие изменения, как добавление или удаление bean-компонентов и настройка свойств конфигурации.

Чтобы отключить ведение журнала отчета, установите следующее свойство:

spring.devtools.restart.log-condition-evaluation-delta=false

Исключая ресурсы

Определенные ресурсы не обязательно должны запускать перезагрузку при их изменении. Например, шаблоны Thymeleaf можно редактировать на месте. По умолчанию изменение ресурсов в /META-INF/maven, /META-INF/resources, /resources, /static, /public, /templates не запускает перезапуск, но вызывает активную перезагрузку (live reload). Если вы хотите настроить эти исключения, вы можете использовать свойство spring.devtools.restart.exclude. Например, чтобы исключить только /static и /public, вы должны установить следующее свойство:

spring.devtools.restart.exclude=static/**,public/**

Если вы хотите сохранить эти значения по умолчанию и добавить дополнительные исключения, используйте вместо этого свойство spring.devtools.restart.additional-exclude.

Просмотр дополнительных путей

Вы можете захотеть, чтобы ваше приложение было перезапущено или перезагружено, когда вы вносите изменения в файлы, которых нет в пути к классам. Для этого используйте свойство spring.devtools.restart.additional-paths, чтобы настроить дополнительные пути для отслеживания изменений. Вы можете использовать свойство spring.devtools.restart.exclude, описанное выше, чтобы контролировать, вызывают ли изменения под дополнительными путями полный перезапуск или активную перезагрузку.

Отключение перезапуска

Если вы не хотите использовать функцию перезапуска, вы можете отключить ее, используя свойство spring.devtools.restart.enabled. В большинстве случаев вы можете установить это свойство в своем application.properties (при этом все равно инициализируется перезапуск загрузчика классов, но он не отслеживает изменения файла).

Если вам нужно полностью отключить поддержку перезапуска (например, потому что она не работает с определенной библиотекой), вам нужно установить системное свойство spring.devtools.restart.enabled в false перед вызовом SpringApplication.run(…), как показано в следующем примере:

public static void main(String[] args) {
    System.setProperty("spring.devtools.restart.enabled", "false");
    SpringApplication.run(MyApp.class, args);
}


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


Комментарии

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

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

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

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