Java Instalar no Windows e macOS

No Windows e no Mac, o jeito mais simples de ter o JDK 25 é o instalador gráfico do Eclipse Temurin: baixar, clicar em "Avançar" e conferir no terminal. Esta aula mostra cada tela, as duas variáveis que importam (JAVA_HOME e Path) e os instaladores de linha de comando, o winget do Windows e o Homebrew do Mac.

Você vai aprender
  • Instalar o Temurin 25 no Windows pelo .msi, marcando a opção do JAVA_HOME.
  • Criar e conferir as variáveis de ambiente JAVA_HOME e Path à mão.
  • Instalar pelo winget.
  • Instalar no macOS pelo .pkg ou pelo Homebrew, e usar o java_home.
  • Conferir no terminal e resolver "não é reconhecido como um comando".
Tudo nesta aula é ilustrativo

A máquina de testes do guia é um Linux, então as telas e saídas do Windows e do macOS desta página não puderam ser produzidas nela. Elas seguem as instruções oficiais do Adoptium (adoptium.net), da Microsoft e do Homebrew, mas os nomes de botões, pastas e números de versão podem mudar. O resultado final, o java -version, tem as mesmas três linhas do Linux, que você já viu em Versões e LTS.

Usa Linux? A aula é Instalar no Linux. No Windows, outra opção é instalar o Linux dentro dele (o WSL) e seguir a aula do Linux.


Antes de baixar: 64 bits, Intel ou ARM?

O JDK é um programa compilado para cada tipo de processador. Baixar o errado dá erro na hora de rodar. Descubra o seu:

SistemaComo descobrirQual baixar
WindowsConfigurações → Sistema → Sobre → "Tipo de sistema""Sistema operacional de 64 bits, processador baseado em x64" → x64. Em notebooks com processador Snapdragon → aarch64.
macOSMenu Apple → Sobre Este Mac → "Chip" ou "Processador""Apple M1, M2, M3, M4…" → aarch64. "Intel" → x64.

Windows: pelo instalador .msi

  1. Baixe. Em adoptium.net, escolha Temurin 25 (LTS), sistema Windows, arquitetura x64, pacote JDK, formato .msi. O arquivo tem um nome parecido com OpenJDK25U-jdk_x64_windows_hotspot_25.0.4.1_1.msi.
  2. Abra o arquivo com dois cliques. O Windows pode perguntar se você permite que o aplicativo faça alterações: clique em Sim.
  3. Licença. Aceite os termos (a licença do OpenJDK, gratuita) e clique em Next ("Avançar").
  4. Escolha os recursos (Custom Setup). Esta é a tela importante. Ela mostra uma lista com ícones de disco ao lado de cada item:
    • Add to PATH ("adicionar ao Path"): já vem marcado. Deixe.
    • Associate .jar ("associar arquivos .jar"): já vem marcado. Deixe.
    • Set JAVA_HOME variable ("criar a variável JAVA_HOME"): vem desmarcado (com um X vermelho). Clique no ícone ao lado e escolha Will be installed on local hard drive ("será instalado no disco local").
    • JavaSoft (Oracle) registry keys: deixe como está.
  5. Instale. Clique em Next e depois em Install. Ao terminar, Finish.

O JDK fica numa pasta como C:\Program Files\Eclipse Adoptium\jdk-25.0.4.1-hotspot\, com os programas em bin, igualzinho à pasta do Linux que você viu em JDK, JRE e JVM.

Conferir no Windows

Abra um terminal novo (os que já estavam abertos não enxergam as variáveis novas): tecle Win, digite cmd (Prompt de Comando) ou powershell e aperte Enter. No Prompt de Comando (saída ilustrativa):

$ java -version
openjdk version "25.0.4.1" 2026-08-18 LTS
OpenJDK Runtime Environment Temurin-25.0.4.1+1 (build 25.0.4.1+1-LTS)
OpenJDK 64-Bit Server VM Temurin-25.0.4.1+1 (build 25.0.4.1+1-LTS, mixed mode, sharing)
$ javac -version
javac 25.0.4.1
$ where java                                                   « o "which" do Windows
C:\Program Files\Eclipse Adoptium\jdk-25.0.4.1-hotspot\bin\java.exe
$ echo %JAVA_HOME%                                             « no Prompt de Comando, variáveis entre %
C:\Program Files\Eclipse Adoptium\jdk-25.0.4.1-hotspot\

No Windows o prompt real é algo como C:\Users\Ana>; o guia mostra o mesmo desenho de prompt para tudo. No PowerShell, as variáveis se escrevem diferente:

O que você querPrompt de Comando (cmd)PowerShellLinux e macOS
Ver o JAVA_HOMEecho %JAVA_HOME%$env:JAVA_HOMEecho $JAVA_HOME
Achar o javawhere javaGet-Command java ou where.exe javawhich java
Separador de pastas\\ (aceita /)/

Configurar JAVA_HOME e Path à mão

Se você esqueceu de marcar a opção do JAVA_HOME, ou instalou de um .zip, configure as variáveis pela janela do Windows:

  1. Tecle Win e digite variáveis de ambiente. Abra Editar as variáveis de ambiente do sistema e clique no botão Variáveis de Ambiente…
  2. Em Variáveis do sistema (a lista de baixo), clique em Novo…. Nome: JAVA_HOME. Valor: a pasta do JDK, por exemplo C:\Program Files\Eclipse Adoptium\jdk-25.0.4.1-hotspot (o botão Procurar no Diretório… evita erros de digitação). OK.
  3. Na mesma lista, selecione Path e clique em Editar…. Clique em Novo e escreva %JAVA_HOME%\bin. Use Mover para Cima até ele ficar acima de qualquer outro caminho com "Java" ou "Oracle". OK em todas as janelas.
  4. Feche e abra o terminal, e confira com java -version e javac -version.

É a mesma ideia do ~/.bashrc do Linux: JAVA_HOME diz onde o JDK mora; o Path é a lista de pastas onde o terminal procura comandos, na ordem. O %JAVA_HOME%\bin no topo faz o JDK 25 ser achado primeiro.

Windows: pelo winget

O Windows 10 e o 11 têm um gerenciador de pacotes de linha de comando, o winget. Num PowerShell ou Prompt de Comando (ilustrativo; confira o nome exato com winget search Temurin):

$ winget search Temurin                              « lista os pacotes do Temurin
$ winget install EclipseAdoptium.Temurin.25.JDK      « instala o JDK 25
winget
O gerenciador de pacotes do Windows (de Windows Package Manager).
install
A ação: instalar.
EclipseAdoptium.Temurin.25.JDK
O identificador do pacote: fabricante, produto, versão e tipo (JDK, não JRE).

O winget roda o mesmo instalador .msi, com as opções padrão: o Path é configurado, mas confira se o JAVA_HOME foi criado (echo %JAVA_HOME%); se não, crie-o à mão como acima.


macOS: pelo instalador .pkg

  1. Baixe. Em adoptium.net, escolha Temurin 25 (LTS), sistema macOS, arquitetura aarch64 (chips Apple M) ou x64 (Intel), pacote JDK, formato .pkg.
  2. Abra o arquivo e siga o instalador: Continuar, aceitar a licença, Instalar. O macOS pede a senha do seu usuário.
  3. Pronto. O JDK fica em /Library/Java/JavaVirtualMachines/temurin-25.jdk/.

No Mac você não precisa mexer no PATH: o macOS tem um /usr/bin/java "porteiro", que procura sozinho o JDK mais novo dentro de /Library/Java/JavaVirtualMachines. Abra o Terminal (em Aplicativos → Utilitários) e confira (ilustrativo):

$ java -version
openjdk version "25.0.4.1" 2026-08-18 LTS
OpenJDK Runtime Environment Temurin-25.0.4.1+1 (build 25.0.4.1+1-LTS)
OpenJDK 64-Bit Server VM Temurin-25.0.4.1+1 (build 25.0.4.1+1-LTS, mixed mode, sharing)
$ javac -version
javac 25.0.4.1
$ /usr/libexec/java_home -V                « lista todos os JDKs instalados
Matching Java Virtual Machines (1):
    25.0.4.1 (arm64) "Eclipse Adoptium" - "OpenJDK 25.0.4.1" /Library/Java/JavaVirtualMachines/temurin-25.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/temurin-25.jdk/Contents/Home

O /usr/libexec/java_home é um utilitário do macOS que responde "onde está o JDK". Com -v 25, ele devolve a pasta do Java 25. É assim que se configura o JAVA_HOME no Mac, no arquivo ~/.zshrc (o Mac usa o shell Zsh por padrão; o arquivo faz o papel do ~/.bashrc):

export JAVA_HOME=$(/usr/libexec/java_home -v 25)

Depois, source ~/.zshrc ou abra um Terminal novo, e echo $JAVA_HOME deve mostrar a pasta …/temurin-25.jdk/Contents/Home. Com vários JDKs instalados, trocar o 25 por 21 escolhe o outro.

macOS: pelo Homebrew

Se você usa o Homebrew (brew.sh), o gerenciador de pacotes mais popular do Mac, o Temurin 25 é um cask (um aplicativo pronto). Ilustrativo:

$ brew search temurin                 « lista as versões disponíveis
$ brew install --cask temurin@25      « instala o JDK 25 (pede a senha)
brew install
Instala um pacote do Homebrew.
--cask
O pacote é um aplicativo pronto (aqui, o mesmo .pkg do Adoptium), não um programa compilado na sua máquina.
temurin@25
O Temurin, versão 25. Sem o @25, o temurin instala sempre a versão mais nova, que pode não ser LTS.

Um teste que funciona em qualquer sistema

Para confirmar a instalação, compile e rode um programa. Este pergunta ao Java em que sistema ele está rodando. Crie uma pasta, salve o arquivo como Main.java e rode no terminal com javac Main.java e java Main:

public class Main {
    public static void main(String[] args) {
        System.out.println("Sistema: " + System.getProperty("os.name"));
        System.out.println("Arquitetura: " + System.getProperty("os.arch"));
        System.out.println("Separador de pastas: " + java.io.File.separator);
    }
}

Na máquina da Ana, um Linux, a saída real é:

$ java Main.java
Sistema: Linux
Arquitetura: amd64
Separador de pastas: /

O mesmo programa, sem mudar nada, num Windows 11 mostraria Sistema: Windows 11, Arquitetura: amd64 e Separador de pastas: \; num Mac com chip M, Sistema: Mac OS X e Arquitetura: aarch64 (ilustrativo). É o "escreva uma vez, rode em qualquer lugar" de O que é Java: o código é o mesmo; a JVM de cada sistema se adapta.

No editor do guia, o teste mais simples:

Brinque com o código: rode e depois troque Windows pelo nome do seu sistema.

public class Main {
    public static void main(String[] args) {
        System.out.println("Instalei o Java 25 no Windows!");
    }
}

Quando dá errado

"'javac' não é reconhecido como um comando interno ou externo"
$ javac -version
'javac' não é reconhecido como um comando interno
ou externo, um programa operável ou um arquivo em lotes.

(Ilustrativo. No PowerShell, a mensagem começa com javac : O termo 'javac' não é reconhecido como nome de cmdlet….)

O que aconteceu: o Windows procurou javac.exe em todas as pastas do Path e não achou. Três causas comuns: o terminal foi aberto antes da instalação; a opção Add to PATH foi desmarcada; ou o que está instalado é só um JRE (sem javac).

Como resolver: feche e abra o terminal. Se continuar, confira o Path (seção Configurar à mão): deve haver %JAVA_HOME%\bin ou o caminho completo da pasta bin do JDK. Se java -version funciona e javac não, instale o JDK, não o JRE.

O java -version mostra uma versão velha (como 1.8.0_…)

O que aconteceu: o computador já tinha um Java antigo (muitas vezes instalado por um programa de banco ou do governo), e a pasta dele está acima no Path. No Windows, o Java antigo da Oracle também costuma colocar um atalho em C:\Program Files (x86)\Common Files\Oracle\Java\javapath.

Como resolver: where java mostra todos os java.exe, na ordem; o primeiro vence. Mova %JAVA_HOME%\bin para o topo do Path. No Mac, use o JAVA_HOME com java_home -v 25.

macOS: "Unable to locate a Java Runtime"

O que aconteceu: o /usr/bin/java "porteiro" do macOS não achou nenhum JDK em /Library/Java/JavaVirtualMachines. Você ainda não instalou, ou instalou de um jeito que deixou o JDK em outra pasta (o Homebrew, com a fórmula openjdk em vez do cask, faz isso).

Como resolver: instale pelo .pkg ou pelo cask temurin@25, e confira com /usr/libexec/java_home -V.

Escrevi um caminho do Windows no código e deu "illegal escape character"

Este é real, compilado na máquina do guia. O código tem um erro de propósito:

public class Main {
    public static void main(String[] args) {
        System.out.println("C:\Program Files\Eclipse Adoptium");
    }
}
$ javac Main.java
Main.java:3: error: illegal escape character
        System.out.println("C:\Program Files\Eclipse Adoptium");
                               ^
Main.java:3: error: illegal escape character
        System.out.println("C:\Program Files\Eclipse Adoptium");
                                             ^
2 errors

O que aconteceu: dentro das aspas de um texto Java, a barra invertida \ é especial: ela começa um "código de escape", como \n (pular linha). \P e \E não são códigos válidos, e o javac aponta cada um com o ^.

Como resolver: para escrever uma barra invertida, escreva duas: "C:\\Program Files\\Eclipse Adoptium". Ou use a barra normal, /, que o Java aceita também no Windows. A aula Caracteres Especiais explica todos os códigos.

Missão: o programa tem o erro acima. Rode para ver a mensagem; depois conserte para ele mostrar exatamente C:\Program Files\Eclipse Adoptium.

public class Main {
    public static void main(String[] args) {
        System.out.println("C:\Program Files\Eclipse Adoptium");
    }
}
public class Main {
    public static void main(String[] args) {
        System.out.println("C:\\Program Files\\Eclipse Adoptium");
    }
}

Referência

TarefaWindowsmacOS
Instalador gráfico.msi do Temurin (marque Set JAVA_HOME).pkg do Temurin
Linha de comandowinget install EclipseAdoptium.Temurin.25.JDKbrew install --cask temurin@25
Onde ficaC:\Program Files\Eclipse Adoptium\jdk-25…/Library/Java/JavaVirtualMachines/temurin-25.jdk
Configurar JAVA_HOMEVariáveis de Ambiente do sistemaexport JAVA_HOME=$(/usr/libexec/java_home -v 25) no ~/.zshrc
Ver qual Java rodawhere javawhich java, /usr/libexec/java_home -V
Conferirjava -version e javac -version num terminal aberto depois da instalação

Exercícios

1. No instalador .msi do Temurin, qual opção vem desmarcada e vale a pena marcar?

2. Você instalou o JDK e o Prompt de Comando que já estava aberto diz que javac não é reconhecido. Primeira coisa a tentar?

3. Num Mac com chip Apple M3, qual arquitetura baixar?

4. O Path do Windows

Complete a entrada do Path que aponta para os comandos do JDK usando a variável JAVA_HOME:

5. A barra invertida

Complete o texto Java para ele mostrar C:\java na tela:

System.out.println("");

Resumo

  • Descubra a arquitetura antes de baixar: x64 (Intel/AMD) ou aarch64 (Apple M, Snapdragon).
  • Windows: .msi do Temurin com Add to PATH e Set JAVA_HOME, ou winget install EclipseAdoptium.Temurin.25.JDK.
  • As variáveis JAVA_HOME (pasta do JDK) e Path (%JAVA_HOME%\bin no topo) se editam em "Variáveis de Ambiente".
  • macOS: .pkg ou brew install --cask temurin@25; o PATH já funciona; JAVA_HOME com /usr/libexec/java_home -v 25.
  • Sempre confira num terminal aberto depois da instalação: java -version e javac -version.
  • "Não é reconhecido como um comando" = pasta fora do Path, terminal antigo ou só JRE instalado.