Ko se pripravlja program Java, prevajalnik ustvari seznam vseh identifikatorji v uporabi. Če ne najde, na kar se nanaša identifikator (npr., Ni izjava o deklaraciji za spremenljivko) ne more dokončati kompilacije.
Čeprav izvorna koda Java vsebuje tudi druge stvari, kot so ključne besede, komentarji in operaterji, Napaka »Ne morem najti simbola« navaja ime določenega paketa, vmesnika, razreda, metode ali spremenljivka. Prevajalnik mora vedeti, na kaj se sklicuje vsak identifikator. Če tega ne stori, koda v bistvu išče nekaj, česar prevajalnik še ne razume.
Včasih napaka izhaja iz kombinacije težav. Če odpravite eno stvar in napaka še vedno obstaja, preverite, ali težave še vedno vplivajo na kodo.
Mogoče je na primer, da poskušate uporabiti neprijavljeno spremenljivko in ko jo popravite, koda še vedno vsebuje napake pri črkovanju.
Napake, kot so neusklajenosti velikih začetnic, so pogosto označene v namenski integrirano razvojno okolje. Čeprav lahko kodo Java napišete v kateri koli urejevalnik besedil, uporaba IDE in z njimi povezanih orodij za povezovanje zmanjšuje napake pri napaki in napakah. Običajni ID-ji Java vključujejo Eclipse in NetBeans.