Когато се съставя програма на Java, компилаторът създава списък на всички идентификатори в употреба. Ако не може да намери това, към което се отнася идентификаторът (например, няма декларация за декларация за променлива) тя не може да завърши компилацията.
Въпреки че изходният код на Java съдържа други неща като ключови думи, коментари и оператори, Грешка „Не мога да намеря символ“ посочва името на конкретен пакет, интерфейс, клас, метод или променлива. Компилаторът трябва да знае какво препраща всеки идентификатор. Ако не е, кодът основно търси нещо, което компилаторът все още не разбира.
Понякога грешката възниква от комбинация от проблеми. Ето защо, ако коригирате едно нещо и грешката продължава, проверете за различни проблеми, които все още засягат кода ви.
Например, възможно е да се опитвате да използвате недекларирана променлива и когато я поправите, кодът все още съдържа правописни грешки.
Грешките като несъответствия с главни букви често се маркират в специален Интегрирана среда за разработка
. Въпреки че можете да напишете своя Java код във всеки текстов редактор, използването на IDE и свързаните с тях инструменти за свързване намалява печатни грешки и несъответствия. Общите Java IDE включват Eclipse и NetBeans.