Possui uma aplicação Spring Boot e precisa realizar o deploy para a web? Sem problemas! Veja o passo-a-passo neste artigo.
O Spring Boot consiste em disponibilizar um template pré-configurado para desenvolvimento e execução de aplicações Spring. Em suma, você consegue escolher os módulos que serão utilizados em seu projeto e, com poucas configurações rápidas, você terá sua aplicação arquitetada e com os recursos necessários.
Por padrão, os projetos em Spring Boot não precisam de um container ou servidor para executar as aplicações. A partir do momento que você realiza o build do projeto, é gerado um arquivo .jar que pode ser executado em localhost.
Contudo, é possível executarmos essas aplicações em um container da web, como o Tomcat. Para isso, será necessário gerarmos a build do projeto em um arquivo .war. Neste artigo, iremos abordar os ajustes necessários para que esse processo ocorra corretamente e sem erros pontuais.
Deploy de aplicação Spring Boot na KingHost
Primeiramente, é necessário se atentar ao que você precisa ter instalado em seu ambiente:
- JDK 1.8 ou superior;
- Gradle 4+ ou Maven 3.2+;
- Um editor de preferência ou IDE;
- Conexão com a internet.
Com os recursos instalados em seu ambiente local, iremos gerar um setup completo do Spring através do Spring Initializr. Neste artigo, utilizaremos o Maven para o processo de deploy, então selecione Maven Project e clique em GENERATE, no rodapé da página.
Após o arquivo ser baixado para sua máquina, descompacte-o.
Nesta etapa do processo, precisaremos ajustar alguns detalhes em nossos arquivos do projeto. Em primeira instância, vamos ajustar o packaging em nosso arquivo pom.xml, deixando da seguinte forma:
<packaging>war</packaging>
Neste mesmo arquivo, valide se a dependência spring-boot-starter-tomcat possui o <scope>provided</scope> definido. Caso não esteja, acrescente-o, mantendo da seguinte forma:
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-tomcat
</artifactId>
<scope>provided</scope>
</dependency>
Os toques finais
O último ajuste em nosso projeto será na classe principal. Portanto, iremos estender a classe SpringBootServletInitializer, além de implantar o método configure. Veja abaixo:
Por último, iremos realizar o build do projeto com o Maven. Portanto, acesse a raiz do seu projeto Spring e rode o seguinte comando:
$ mvn clean package
Se tudo ocorrer bem, você terá um retorno de sucesso no terminal, além do arquivo .war que será gerado no diretório target, na raiz da aplicação.
[INFO] Building war: /caminho/para/app/target/demo-0.0.1-SNAPSHOT.war
[INFO] Replacing main artifact with repackaged archive
[INFO] BUILD SUCCESS
E tudo feito! Agora, basta realizar o deploy na KingHost, seguindo este tutorial. 🙂
Restando dúvidas ou precisando de ajuda, contate-nos via WhatsApp ou chat e converse com nosso suporte. Tenha em mãos os dados de acesso ao seu painel de controle para ser atendido com mais agilidade.