Что значит ошибка Could not find or load main class при запуске Java — Q&A Хекслет
2026-02-26 19:58 Diff

Чаще всего эта ошибка возникает из-за несоответствия имени файла и класса, либо из-за того, что текущая директория указана неправильно при запуске.

Основные моменты:

Имя файла и класса должны совпадать

В Java имя файла должно совпадать с именем публичного класса, содержащего метод main. Например:

Если класс называется HelloWorld, то файл должен называться HelloWorld.java, а запускать нужно java HelloWorld.

Текущая директория

При запуске через java Main JVM ищет Main.class в текущей директории (.). Если вы находитесь не в той папке, где лежит .class файл, появится ошибка.

Пример правильного запуска:

Не используйте лишние параметры -classpath без необходимости

Для классов в текущей папке достаточно:

Проверка содержимого файла

Убедитесь, что файл содержит корректный main метод и имя класса совпадает с именем файла.

Если все соблюдено, ошибка исчезает. На Windows иногда проблемы могут возникать из-за прав доступа к папке (например, C:\Windows\System32 лучше не использовать для разработки), поэтому стоит работать в пользовательской директории, например C:\Users\<имя>\Projects.