Considere o seguinte segmento de Java código, armazenado em um arquivo chamado JollyMessage.java:
// Uma mensagem alegre é gravada na tela!
classe Jollymessage
{
public static void main (String [] args) {
// Escreva a mensagem na janela do terminal
System.out.println ("Ho Ho Ho!");
}
}
Na execução do programa, esse código produzirá uma mensagem de erro em tempo de execução. Em outras palavras, um erro foi cometido em algum lugar, mas o erro não será identificado quando o programa for compilado, somente quando é corre.
Depuração
No exemplo acima, observe que a classe é chamada “Jollymessage”, enquanto o nome do arquivo é chamado JollyMessage.java.
Java faz distinção entre maiúsculas e minúsculas. O compilador não irá reclamar porque tecnicamente não há nada de errado com o código. Ele criará um arquivo de classe que corresponda exatamente ao nome da classe (por exemplo, Jollymessage.class). Ao executar o programa chamado JollyMessage, você receberá uma mensagem de erro porque não há nenhum arquivo chamado JollyMessage.class.
O erro que você recebe ao executar um programa com o nome errado é:
Exceção no encadeamento "main" java.lang. NoClassDefFoundError: JollyMessage (nome incorreto: JollyMessage)..
Soluções comuns de erro de tempo de execução
Se o seu programa compilar com êxito, mas falhar na execução, revise seu código para erros comuns:
- Citações simples e duplas incompatíveis
- Citações ausentes para strings
- Operadores de comparação incorretos (por exemplo, não usar sinais de igual duplo para indicar atribuição)
- Referenciando objetos que não existem ou que não existem usando a capitalização fornecida no código
- Fazendo referência a um objeto que não possui propriedades
Trabalhar em ambientes de desenvolvimento integrados como o Eclipse pode ajudar a evitar erros no estilo "erro de digitação".
Para depurar programas Java com produção, execute o depurador do navegador da Web - você deve receber uma mensagem de erro hexadecimal que pode ajudar no isolamento da causa específica do problema.
Em algumas situações, o problema pode estar não no seu código, mas na sua Java Virtual Machine. Se a JVM estiver engasgada, pode ocorrer um erro de tempo de execução, apesar da falta de uma deficiência na base de código do programa. Uma mensagem do depurador do navegador ajudará a isolar o código causado pelos erros causados pela JVM.