Considérez le segment suivant de code Java, stocké dans un fichier appelé JollyMessage.java:
// Un message joyeux est écrit à l'écran!
classe Jollymessage
public static void main (String [] args)
// Ecrivez le message dans la fenêtre du terminal
System.out.println ("Ho Ho Ho!");
À l'exécution du programme, ce code produira un message d'erreur d'exécution. En d'autres termes, une erreur a été commise quelque part, mais l'erreur ne sera pas identifiée lorsque le programme est compilé, seulement quand c'est courir.
Dans l'exemple ci-dessus, notez que la classe est appelée "Jollymessage" tandis que le nom de fichier est appelé JollyMessage.java.
Java est sensible à la casse. Le compilateur ne se plaindra pas car techniquement il n'y a rien de mal avec le code. Il créera un fichier de classe qui correspond exactement au nom de la classe (c'est-à-dire Jollymessage.class). Lorsque vous exécutez le programme appelé JollyMessage, vous recevrez un message d'erreur car il n'existe aucun fichier appelé JollyMessage.class.
L'erreur que vous recevez lorsque vous exécutez un programme avec le mauvais nom est:
Exception dans le thread «principal» java.lang.NoClassDefFoundError: JollyMessage (mauvais nom: JollyMessage)…
Si votre programme se compile correctement mais échoue à l'exécution, examinez votre code pour les erreurs courantes:
Travailler dans des environnements de développement intégrés comme Eclipse peut vous aider à éviter les erreurs de style "typo".
Pour déboguer des programmes Java de production, exécutez le débogueur de votre navigateur Web - vous devriez voir un message d'erreur hexadécimal qui peut aider à isoler la cause spécifique du problème.
Dans certaines situations, le problème peut ne pas résider dans votre code, mais dans votre machine virtuelle Java. Si la JVM s'étouffe, elle peut entraîner une erreur d'exécution malgré l'absence de déficience dans la base de code du programme. Un message de débogage du navigateur aidera à isoler le code dû aux erreurs causées par la JVM.