/
Вопросы и ответы
/
Java
/

Почему в IntelliJ IDEA возникают ошибки Cannot resolve symbol 'String' после смены Sources Root?

Почему в IntelliJ IDEA возникают ошибки Cannot resolve symbol 'String' после смены Sources Root?

При создании Java-проекта в IntelliJ IDEA автоматически создается папка src, которая помечается как Sources Root. Если снять эту отметку, чтобы вручную настроить структуру директорий (например, создать отдельную папку java для исходников), IDE начинает выдавать ошибки при попытке коммита файла Slot.java:

Cannot resolve symbol 'String'
Cannot resolve symbol 'System'

Как правильно настроить Sources Root, чтобы избежать этих ошибок?

8 дней назад

Nikolai Gagarinov

Ответы

1

Ошибки появляются потому, что IntelliJ IDEA использует Sources Root для поиска исходных файлов Java и подключения JDK. Если папка, содержащая исходники (.java), не помечена как Sources Root, IDE не видит стандартные классы Java (String, System и т.д.), поэтому и возникает ошибка Cannot resolve symbol.

Правильное решение:

  1. Оставить папку, где лежат .java файлы, помеченной как Sources Root. В вашем случае это папка java.
  2. Папку src можно оставить просто контейнером или удалить её, если она не нужна.
  3. В будущем, при использовании Maven/Gradle, структура проекта будет стандартной (src/main/java), и IntelliJ автоматически настроит Sources Root.

Вывод: То, что вы пометили папку java как Sources Root, — это корректное и рекомендованное решение. Без Sources Root IDE не сможет правильно определить пути к классам и стандартной библиотеке Java.

8 дней назад

Nikolai Gagarinov