Что такое горячее развертывание
Все знают, что во время разработки проекта данные страницы или структура данных часто изменяются. Чтобы отобразить эффект изменения, вам часто нужно перезагрузить приложение для просмотра эффекта изменения. На самом деле, это новый файл класса, который переписывается и сгенерирован. Этот файл записывает различную информацию, соответствующую коду, а затем файл класса будет загружен классовой загрузкой виртуальной машины.
Горячее развертывание использует эту функцию. Он прислушивается к тому факту, что если файл класса будет изменен, он создаст новый класс загрузчик для загрузки файла. После серии процессов результаты наконец будут представлены нам.
Механизм загрузки класса
Компилятор может скомпилировать код в файл класса, который хранит Bytecode. Файл класса хранит различную информацию и в конечном итоге будет загружен в виртуальную машину для работы и использования. Механизм загрузки класса (выдержка из «подробного понимания виртуальной машины Java») Виртуальная машина загружает данные, описывающие класс из файла класса в память, и проверяет, преобразует, анализирует и инициализирует данные и, наконец, образует тип Java, который может быть непосредственно использовать виртуальную машину.
Spring Boot реализует горячее развертывание
Spring Boot реализует горячее развертывание следующими способами:
Пружина загружена
Этот метод загружается в виде плагина Maven, поэтому он начинает использовать команду MVEN mvn spring-boot:run при запуске, но начинается с использованием Application.Run. Он недействителен, потому что механизм плагина Maven был обойден при запуске приложения.
Метод интеграции POM:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.5.RELEASE</version> </dependency> </plugin> </plugin> </plugins> </build>
Spring-Boot-Devtools
Этот метод может использоваться для перезапуска приложения после изменения файла.
Интеграция POM:
<!-Модуль горячего развертывания-> <Dependency> <groupId> org.springframework.boot </GroupId> <artifactId> Spring-boot-devtools </artifactid> <plociate> true </optunal> <!-Это требует истинного развертывания, чтобы быть эффективным-> Зависимость>
Интеграция внимания
#Shield Thymeleaf Cache (Предложение: среда разработки установлена на false, среда генерации установлена на True) Spring.ThymeLeaf.Cache = FALES
1. Для DevTools вы можете указать каталоги или исключить каталоги для горячего развертывания.
#Файл, который добавляет, что каталог требует restartspring.devtools.restart.additional-paths = src/main/java#файл, который исключает этот каталог, не требует перезагрузки.
Установите идею, чтобы включить изменение файлов для автоматического перезапуска проекта
1. Найдите предпочтения идеи -> Построение, выполнение, развертывание -> Компилятор, автоматически проверить проект сборки
2. Вернитесь к нормальному интерфейсу идеи. Используйте сдвиг клавиш ярлыки+опция+command+/ для Mac. Ключ для ярлыка на окне - Shift+Ctrl+Alt+/. Откройте реестр и проверьте его.
Compiler.automake.allow.when.app.runningcompiler.automake.allow.when.app.running
Благодаря вышеуказанным настройкам вы можете загрузить HTML без перезапуска службы, но если вы измените файл Java, служба автоматически перезагрузится через несколько секунд. Если вы не хотите, чтобы служба перезапустила, вам необходимо добавить Spring.devtools.reatart.enable = false в Application.properties или Application.yml.
Суммировать
Выше приведено горячее развертывание интегрированных Spring-Boot-Devtools Spring Boot, которое редактор представил вам. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!