Aumentando produtividade com Spring Boot

22 Jun 2024 » spring, springboot, produtividade (aproximadamente 1 minuto de leitura)

Sprint boot + Hot reload

Em outras linguagens de programacao e ambientes de desenvolvimentos (IDEs) como node.js com VS Code e GoLang vi que existiam formas de automaticamente a IDE identificar mudancas e fazer reload do projeto. Pesquisei como poderia ter isso em um ambiente Java com Spring Boot e Intelij e vi que existia uma feature que eu pouco utilizava.

Estou usando o Spring Boot 3.3.1 e Maven, porém acredito que seja agnóstico ao gerenciador de dependencias e deve funcionar com Gradle também. Configuracões de Beans, nem sempre funcionam bem, e em alguns casos, é necessário restart manual, mas para muitos cenário de mudancas que testei funcionou.

Configurar no pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>
    <optional>true</optional>
</dependency>

No Intelij é necessário habilitar o suporte a compilacão automática.

Marcar as duas opcões abaixo:

Settings -> Build, Execution, Deployment -> Compiler -> Marcar a opcão (Build project automatically)

Settings -> Advanced Settings -> Marcar a opcão ‘Allow auto-make to start even if developed application is currently running’

Conclusão

Existem outros recursos no Spring Boot dev tools, porém , só esse recurso que eu precisava no momento e os demais, tentarei usar posteriormente, mas a documentacão está disponível nas referências e é possível descobrir mais pontos que podem ajudar na produtividade.

Features disponíveis:

  • Property Defaults: Usado para desenvolvimento de frontend com Thymeleaf
  • Automatic Restart - Usado para desenvolvimento de APIs
  • LiveReload - Usado para desenvolvimento com front end para recarregar browser
  • Remote Debug Tunneling: Usado para debug remoto
  • Remote Update and Restart: Usado para debug remoto

Caso deseje desabilitar basta configurar essa propriedade: spring.devtools.restart.enabled=false

Fontes