NetBeans 12.0: «У класса нет основного метода» (но он есть)
NetBeans 12.0
Jdk 15
Я не могу запустить свою программу, нажатие зеленой кнопки запуска ничего не делает, а щелчок правой кнопкой мыши + запуск файла на MainFrame дает ошибку «Класс не имеет основного метода». Но, как вы можете видеть на GIF-изображении ниже, у него есть главный (String args[]).
Кто-нибудь знает, почему это происходит?
2 ответа
Первоначальные предложения:
Сначала убедитесь, что все файлы сохранены. Если вы попытаетесь запустить программу, в которой класс, содержащий основной метод, не был сохранен, это может произойти.
Щелкните правой кнопкой мыши имя проекта (в проводнике проектов), затем выберите «Свойства»> «Выполнить» и убедитесь, что там выбран основной класс. Опять же, если вы не сохранили файлы, NetBeans может не найти основной метод (пока).
Также может быть стоит проверить, есть ли в вашем проекте какие-либо другие классы, которые также имеют
Если все остальное не удается:
Может помочь очистка кеша NetBeans.
Перейдите в раздел «Справка»> «О программе» и обратите внимание на расположение каталога кэша. Выйти из NetBeans. Удалите каталог Cache. Перезапустите NetBeans.
ПРЕДУПРЕЖДЕНИЕ
Обратите внимание на то, что @skomisa указывает в комментариях:
NetBeans 12 не поддерживает Java 15, и, хотя он может работать для тривиального проекта, проблемы все же остаются (как показано в комментариях здесь). Было бы безрассудно использовать эту комбинацию для производственного кода, и IDE (в отличие от компилятора) может не обрабатывать новые функции в Java 15 должным образом.
Вот что сработало для меня в Netbeans 12.3 JDK 11:
- Щелкните правой кнопкой мыши Project -> Properties
- На вкладке «Источники» нажмите «Добавить папку» в разделе «Папки исходного пакета». Выберите src.
- Нажмите ОК.
Похоже, Netbeans повторно сканирует папку проекта и обнаруживает основной класс.