Carregando...

Compilação em Java

Compile um arquivo didático pequeno e execute o arquivo de classe que ele produz. Em Build.java, mantenha a classe pública Build, imprima ok na primeira demo, depois imprima ok e built na segunda demo após mudar o arquivo e compilar de novo. Execute javac Build.java para Build.class aparecer ao lado do fonte. Execute java Build — não java Build.java. Deixe Mini Project para a página seguinte. Esta lição é o hábito compilar-e-executar com um arquivo .class visível, não uma nova chamada de biblioteca e não um fechamento do curso.

Compile uma vez, depois execute a classe

Abra Build.java. Mantenha o nome da classe pública Build. Apague sobras de demos Summary Recap, sobras de rolagens Random Dice, sobras de impressões de data Stamp e qualquer Scanner de teclado que espere digitação. O programa não deve esperar entrada.
Dentro de Build.main, imprima uma palavra curta:
System.out.println("ok");
Na pasta que contém Build.java, execute javac Build.java. Quando chaves e ponto-e-vírgula batem, javac não imprime linha própria. Ele grava Build.class ao lado do fonte. Esse arquivo .class é o que o launcher Java carrega.
Depois execute java Build. Deixe o sufixo .java de fora no comando de execução. Mantenha uma classe pública para o nome bater com Build. A tela mostra ok.

Build prints ok

java
public class Build {
    public static void main(String[] args) {
        System.out.println("ok");
    }
}

Percorra a execução uma vez. javac lê Build.java e grava Build.class. java Build carrega Build.class, começa em Build.main e imprime ok. Nada constrói new Random(42). Nada imprime ready 42 do Recap. Nada congela um dia do calendário.
Diga a regra de iniciante olhando a pasta: fonte termina em .java, bytecode em .class, compile com javac, execute com java e o nome da classe. Não invente Mini Project nesta página. Mini Project espera a próxima lição. Não digite java Build.java — essa forma de execução está errada neste caminho do curso.
Se ainda vir ready 42 de um arquivo Recap sobrando, mude para Build.java e execute java Build depois de javac Build.java. Se javac reportar erro, corrija o fonte e compile de novo antes de executar. Se a execução disser que não encontra ou não carrega a classe principal Build, confirme que está na pasta que contém Build.class e que a compilação foi bem-sucedida.

Mude o fonte, compile de novo

A primeira demo prova uma compilação bem-sucedida. A segunda prova que edições precisam de javac fresco antes da tela mudar. Mantenha a mesma classe pública Build. Imprima duas linhas:
System.out.println("ok");
System.out.println("built");
Salve o arquivo. Execute javac Build.java de novo para reescrever Build.class. Depois execute java Build. A tela mostra ok, depois built.
Se mudar o fonte e pular javac, java Build pode ainda mostrar só ok do arquivo .class antigo. Essa tela velha é lição de compilação, não de Random. Compile depois de cada edição mantida nesta página.

Build prints ok then built

java
public class Build {
    public static void main(String[] args) {
        System.out.println("ok");
        System.out.println("built");
    }
}

Compile com javac Build.java e execute java Build de novo. Percorra a execução uma vez. O novo arquivo .class guarda as duas linhas de impressão. A primeira grava ok. A segunda grava built. Nada espera o teclado. Nada armazena seed. Nada junta ready e 42.
Mantenha as duas demos como duas formas didáticas. Primeiro prove uma linha após compilação limpa. Depois prove duas linhas após recompilar. Ambas compartilham o mesmo nome de classe e os mesmos comandos. A segunda só acrescenta outro println.
Se apagar Build.class e executar java Build sem compilar, o launcher falha porque o bytecode sumiu. Compile de novo para restaurar Build.class. Se duas classes públicas compartilham um arquivo, javac reclama — mantenha só Build pública no arquivo didático.

javac versus java

Esses dois comandos parecem parecidos e fazem trabalhos diferentes. Mantenha-os separados enquanto pratica.

📊 Compile and run habits for Build

Command Job Beginner check
javac Build.java reads source, writes Build.class success is often silent; look for the .class file
java Build loads Build.class and starts main no .java ending on this command
java Build.java wrong shape for this lesson fix the command; do not treat it as the teaching run
Skip javac after an edit old bytecode may still run stale screen means compile again
Missing Build.class run cannot load the class run javac Build.java first

Compilar não é Summary nem Mini Project

Summary pediu que você explicasse ready 42 do Recap. Compilar pede que você veja javac gravar bytecode e java carregá-lo. Mini Project pedirá que você monte um programa pequeno seu na página seguinte. Não misture esses três papéis num único arquivo iniciante hoje.
ok e built são só palavras de tela para este arquivo didático. Não são faces Random nem linha do mapa Summary. Quando falta import Random num arquivo Dice sobrando, esse problema é prática Random, não Compilar. Quando Recap ainda imprime ready 42, deixe esse arquivo como histórico e mantenha Build na tela.
Sem javac, não há .class fresco para seu fonte mais recente. Sem o comando certo java Build, você pode nunca carregar essa classe. Mantenha os dois passos. Mantenha o nome da classe alinhado ao arquivo. Mantenha arquivos Mini Project fora desta página até essa lição.

Checagens na pasta antes de seguir

Liste a pasta após compilação bem-sucedida. Você deve ver Build.java e Build.class juntos. O fonte é o que você edita. O arquivo de classe é o que você executa. Iniciantes às vezes correm atrás da tela editando o arquivo errado — abra Build.java, salve, compile, depois execute.
Se javac não achar Build.java, confira a pasta atual e a grafia do nome, incluindo B maiúsculo. Se a execução não imprimir nada, confirme que main ainda contém as linhas println. Se a tela ainda mostrar só ok depois de acrescentar built, provavelmente pulou a segunda compilação.
Não trate Compilar como lugar para inventar árvores de pacote ou empacotamento jar. Esses tópicos esperam. Esta página mantém uma classe pública, duas telas claras e o par javac / java.

Antes do Mini Project

Você pode manter a classe pública Build, imprimir ok na primeira demo, imprimir ok depois built na segunda, compilar com javac Build.java, ver Build.class aparecer e executar java Build sem o sufixo .java. A tabela separa compilar de executar. A página seguinte é Mini Project, onde você montará um programa pequeno com peças que já tem.
Mantenha as demos Build para um par compilar-executar claro. Mantenha arquivos Recap Summary fora desta página ao praticar Compilar. Mantenha demos de dados Random fora desta página ao praticar Compilar. Mantenha trabalho Mini Project fora desta página até essa lição. Esses hábitos são o checkpoint antes de avançar. Quando a tela de uma linha mostra ok ou a de duas linhas mostra ok depois built, Compilar fez seu trabalho e você está pronto para Mini Project.
Última passagem na pasta: um Build público, Build.class presente após javac, sem espera de teclado, sem imports forçados de Random ou LocalDate, comando de execução sem .java. Execute javac Build.java e java Build mais uma vez na demo que mantém aberta. Se a tela ainda mostrar ok ou ok depois built, a forma Compilar está sólida e o curso pode seguir para Mini Project na página seguinte. Prefira um hábito de compilação claro a cada leitura para que cada passagem ensine o mesmo mapa.

🧠 Teste Seu Conhecimento

Pronto para Começar

Teste Seu Conhecimento

Desafie-se com este questionário interativo e veja o quão bem você entende o tópico

❓
5
Perguntas
🎯
70%
Para Passar
♾️
∞
Tempo
🔄
∞
Tentativas

📝 Instruções

  • Leia cada pergunta cuidadosamente
  • Selecione a melhor resposta para cada pergunta
  • Você pode refazer o quiz quantas vezes quiser
  • Seu progresso será mostrado no topo