DEV Community

Cover image for Capítulo 2: Primeiros Passos com Quarkus
Eduardo R. Ferreira
Eduardo R. Ferreira

Posted on • Edited on

Capítulo 2: Primeiros Passos com Quarkus

📚 Série: Quarkus: Desvendando o Desenvolvimento Moderno com Java

Este é o segundo capítulo de uma série completa sobre Quarkus. Prepare-se para uma jornada que vai transformar sua visão sobre desenvolvimento Java moderno!


Agora que você já conhece o poder do Quarkus e suas vantagens, chegou a hora de colocar a mão na massa! Neste capítulo, vamos configurar seu ambiente de desenvolvimento, criar sua primeira aplicação "Hello World" e explorar o famoso Live Coding que vai revolucionar sua produtividade.

Se você é daqueles desenvolvedores que ama ver o código funcionando rapidamente, prepare-se para se apaixonar pelo Quarkus! 💜


🛠️ Configurando seu Ambiente de Desenvolvimento

Antes de mergulharmos no código, vamos preparar nosso ambiente. Não se preocupe, é mais simples do que parece!

1. Java Development Kit (JDK)

O Quarkus precisa do JDK 11 ou superior. Minha recomendação pessoal? Use uma versão LTS como JDK 17 ou JDK 21 - são mais estáveis e têm suporte garantido por anos.

Onde baixar:

Testando a instalação:

java -version
javac -version
Enter fullscreen mode Exit fullscreen mode

Você deve ver algo como:

java version "17.0.8" 2023-07-18 LTS
Java(TM) SE Runtime Environment (build 17.0.8+9-LTS-211)
Enter fullscreen mode Exit fullscreen mode

2. Sistema de Build: Maven ou Gradle

O Quarkus abraça tanto o Maven quanto o Gradle. Nesta série, usaremos o Maven por ser mais comum na comunidade Java, mas fique tranquilo - os conceitos se aplicam perfeitamente ao Gradle também.

Instalando o Maven:

  1. Baixe em maven.apache.org
  2. Configure as variáveis de ambiente
  3. Teste com: mvn -v

3. IDE: Seu Melhor Amigo

Embora você possa usar qualquer editor de texto, uma boa IDE faz toda a diferença:

  • IntelliJ IDEA (Community é gratuita!) - minha preferida
  • VS Code com extensões Java - leve e poderosa
  • Eclipse com Quarkus Tools - clássica e confiável

4. Quarkus CLI (Recomendado!)

A CLI do Quarkus é como ter um assistente pessoal para seus projetos. Facilita tudo: criação de projetos, adição de extensões e muito mais.

Instalação:


🎯 Criando sua Primeira Aplicação: Hello Quarkus!

Agora vem a parte divertida! Vamos criar nosso primeiro projeto Quarkus. Abra seu terminal favorito e vamos nessa:

⚠️ Evite usar Git Bash no Windows para rodar comandos Maven com -D
Ele pode interpretar os argumentos de forma incorreta.
✅ Use o Prompt de Comando (cmd) ou o PowerShell para evitar erros.

mvn io.quarkus.platform:quarkus-maven-plugin:3.6.4:create -DprojectGroupId=com.example -DprojectArtifactId=hello-quarkus -DclassName="com.example.GreetingResource" -Dpath="/hello"
Enter fullscreen mode Exit fullscreen mode

🔍 Decifrando o comando:

  • quarkus-maven-plugin:3.6.4:create - invoca o plugin do Quarkus
  • projectGroupId=com.example - identificação do seu projeto
  • projectArtifactId=hello-quarkus - nome da pasta/projeto
  • className="com.example.GreetingResource" - classe REST inicial
  • path="/hello" - endpoint da sua API

Navegue para o projeto:

cd hello-quarkus
Enter fullscreen mode Exit fullscreen mode

E agora... o momento mágico! Execute:

mvn quarkus:dev
Enter fullscreen mode Exit fullscreen mode

Abra http://localhost:8080/hello no seu navegador e... voilà! 🎉

Você verá: Hello from Quarkus REST


📁 Anatomia de um Projeto Quarkus

Vamos explorar o que foi criado. A estrutura é bem familiar para quem já trabalha com Java:

hello-quarkus/
├── pom.xml                                 # Configurações Maven
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   └── com/example/
│   │   │       └── GreetingResource.java   # Sua primeira API REST
│   │   └── resources/
│   │       ├── application.properties      # Configurações da app
│   │       └── META-INF/resources/
│   │           └── index.html              # Página inicial
│   └── test/
│       └── java/com/example/
│           ├── GreetingResourceTest.java   # Testes unitários
│           └── GreetingResourceIT.java     # Testes de integração
Enter fullscreen mode Exit fullscreen mode

Arquivos Importantes:

pom.xml - O coração do seu projeto Maven. Aqui ficam:

  • Dependências do Quarkus
  • Extensões (que veremos no próximo capítulo)
  • Configurações de build

GreetingResource.java - Sua primeira API REST:

@Path("/hello")
public class GreetingResource {
    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String hello() {
        return "Hello from Quarkus REST";
    }
}
Enter fullscreen mode Exit fullscreen mode

application.properties - Onde a mágica da configuração acontece. Aqui você define:

  • Portas de conexão
  • Configurações de banco de dados
  • Propriedades customizadas

⚡ Live Coding: A Revolução da Produtividade

Aqui está o recurso que vai mudar sua vida como desenvolvedor! O Live Coding do Quarkus elimina aquela espera chata entre alteração e teste.

Como funciona na prática:

  1. Certifique-se de que o modo dev está rodando:
   mvn quarkus:dev
Enter fullscreen mode Exit fullscreen mode
  1. Faça uma alteração no código: Abra GreetingResource.java e modifique o método:
   @GET
   @Produces(MediaType.TEXT_PLAIN)
   public String hello() {
       return "Olá, mundo! Quarkus é incrível! 🚀";
   }
Enter fullscreen mode Exit fullscreen mode
  1. Salve o arquivo (Ctrl+S)

  2. Atualize o navegador - SEM REINICIAR NADA!

Resultado: Mudança instantânea! ⚡

O que o Live Coding detecta:

  • ✅ Alterações no código Java
  • ✅ Modificações em application.properties
  • ✅ Novos recursos estáticos (HTML, CSS, JS)
  • ✅ Adição de novas extensões
  • ✅ Mudanças em templates

🎮 Experimente Você Mesmo!

Que tal brincar um pouco? Tente estas modificações:

  1. Adicione um parâmetro à sua API:
@GET
@Path("/{name}")
@Produces(MediaType.TEXT_PLAIN)
public String hello(@PathParam("name") String name) {
    return "Olá, " + name + "! Bem-vindo ao Quarkus!";
}
Enter fullscreen mode Exit fullscreen mode

Teste: http://localhost:8080/hello/SeuNome

  1. Retorne JSON:
@GET
@Path("/json")
@Produces(MediaType.APPLICATION_JSON)
public JsonObject helloJson() {
    return Json.createObjectBuilder()
            .add("message", "Hello from Quarkus!")
            .add("timestamp", LocalDateTime.now().toString())
            .build();
}
Enter fullscreen mode Exit fullscreen mode

Teste: http://localhost:8080/hello/json


🏁 Próximos Passos

Parabéns! 🎉 Você acabou de:

  • ✅ Configurar seu ambiente Quarkus
  • ✅ Criar sua primeira aplicação
  • ✅ Experimentar o Live Coding
  • ✅ Entender a estrutura de um projeto

No próximo capítulo, vamos mergulhar fundo na Injeção de Dependências com CDI - o sistema que vai organizar e potencializar seu código de forma elegante e profissional.


🔗 Continue a Jornada

👉 Capítulo 3: Injeção de Dependências com CDI no Quarkus - Descubra como organizar seu código de forma profissional


📝 Considerações Finais

O Quarkus realmente transforma a experiência de desenvolvimento Java. O Live Coding que você experimentou hoje é apenas o começo - nos próximos capítulos, vamos explorar recursos ainda mais poderosos que farão você questionar por que não conhecia isso antes!

Gostou do conteúdo?

  • 👍 Deixe seu like se foi útil
  • 💬 Comente suas dúvidas ou experiências
  • 🔄 Compartilhe com outros devs
  • 👀 Me siga para não perder os próximos capítulos!

💡 Dica Pro: Mantenha o modo dev sempre rodando enquanto desenvolve - você vai se surpreender com a velocidade que ganha!

Top comments (0)