Kun Java-ohjelmaa käännetään, kääntäjä luo luettelon kaikista tunnisteet käytössä. Jos se ei löydä mitä tunniste viittaa (esim. Ei ole ilmoituslausunto muuttujalle) se ei voi suorittaa kokoamista.
Vaikka Java-lähdekoodi sisältää muita asioita, kuten avainsanoja, kommentteja ja operaattoreita, "Ei löydy symbolia" -virhe viittaa tietyn paketin, käyttöliittymän, luokan, menetelmän tai nimeen muuttuja. Kääntäjän on tiedettävä, mitä jokainen tunniste viittaa. Jos ei, koodi etsii periaatteessa jotain, jota kääntäjä ei vielä ymmärrä.
Joskus virhe johtuu ongelmien yhdistelmästä. Siksi, jos korjaat yhden asian, ja virhe jatkuu, tarkista, onko koodillasi edelleen ongelmia.
On esimerkiksi mahdollista, että yrität käyttää pimeää muuttujaa ja kun korjaat sen, koodi sisältää silti oikeinkirjoituksen virheitä.
Virheet, kuten isoja kirjaimia koskevat epäsuhteet, merkitään usein erillisellä merkinnällä integroitu kehitysympäristö. Vaikka voit kirjoittaa Java-koodisi missä tahansa tekstieditorissa, IDE: ien ja niihin liittyvien litter-työkalujen käyttö vähentää kirjoitusvirheitä ja virheellisiä virheitä. Yleisiä Java IDE -sovelluksia ovat Eclipse ja NetBeans.