Netbeans - класс не имеет основного метода - PullRequest
3 голосов
/ 23 декабря 2009

Моя программа - это просто System.out.println (""); Но netbeans не может найти основной метод. Netbeans 6.7.1 конфликтует с WIN7? Любая возможная ошибка?

Ответы [ 12 ]

5 голосов
/ 14 апреля 2011

Это происходит, когда вы перемещаете местоположение основного класса вручную, потому что Netbeans не обновляет один из его файлов свойств. Откройте файл nbproject / project.properties и измените значение main.class на правильное расположение пакета.

4 голосов
/ 29 октября 2012

Иногда передача параметров в методе main вызывает эту проблему, например. public static void main(String[] args,int a). Если вы объявите переменную вне метода main, это может помочь:)

3 голосов
/ 19 октября 2012

Выключите программу, нажав SHIFT + F6 вместо нажатия кнопки RUN в окне. Это может быть глупо, но ошибка, когда основной класс не найден, не выполняется, проект выполняется хорошо ...

2 голосов
/ 20 июня 2012

Скорее всего, вы использовали заглавную букву 'm' в 'main' до ' M ain'

Это случилось со мной в этот момент, но я исправил это благодаря различным примерам исходного кода, приведенным всеми ответившими. Спасибо.

1 голос
/ 18 октября 2016

Если вы назвали свой класс ключевым словом в Java, ваша программа не узнала бы, что у него есть метод main.

1 голос
/ 23 декабря 2009

в окне Project щелкните правой кнопкой мыши по вашему проекту и выберите свойства, перейдите в Run и установите Main Class (вы можете просмотреть его). эта ручная работа, если у вас есть статический main в каком-то классе:

public class Someclass
{

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args)
    {
        //your code
    }
}

Netbeans не имеет никакого конфликта с W7, и вы можете использовать версию 6.8.

1 голос
/ 23 декабря 2009

Убедитесь, что это

public static void main(String[] argv)

Никакая другая подпись не подойдет.

0 голосов
/ 29 января 2017

Это на какое-то время разрушило меня ... Я знал, что должен быть более простой путь с IDE мирового класса, таким как Netbeans.

Самый простой способ - нажать Shift + F11 (Очистить и построить проект), затем нажать F6 , чтобы запустить его.

Он соответствующим образом обновляет Netbeans и находит ваше основное без всего ручного труда; и если у вас несколько сетей, вы сможете выбрать правильную.

0 голосов
/ 20 июля 2016

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

Важно отметить, что в некоторых проектах есть несколько классов с методом main.

В моем случае я мог запустить проект через основной класс, но не смог запустить какой-то другой класс, у которого был метод main. Единственное, что мне помогло, это рефакторинг класса и его переименование. Я пробовал:

  • перезапустить NetBeans
  • заново открыть проект
  • очистить кэш NetBeans
  • удалить файл и создать новый с тем же именем и содержимым
  • удалить файл и создать новый файл с тем же именем, но очень простым содержимым с использованием только основного метода и распечатать сообщение
  • переименуйте класс (refactor) так, чтобы временное имя и обратно
  • удалить проект и создать новый с теми же источниками

Единственное, что позволило мне запустить этот класс, это переименовать его навсегда . Я думаю, что это какая-то ошибка NetBeans.

Редактировать: Еще одна вещь, которая помогла - полностью удалить Netbeans, очистить кэш и любые файлы конфигурации . Так получилось, что была доступна более новая версия Netbeans, и я установил ее. Но старый, вероятно, тоже сработал.

0 голосов
/ 16 февраля 2014

Я считаю, что моя ситуация была иной, потому что ни одно из перечисленных выше решений не работает для меня. Позвольте мне поделиться моей ситуацией.

  1. Я импортирую существующий проект (NewProject-> Java-> Import Existing Projects)
  2. Я называю проект XYZ. Функция main существует в Main.class.
  3. Я пытаюсь запустить код, который я изменил в основной функции, но ошибка выскакивает. Я попробовал shift_f6, специально пересобрать. Ничего не работает.

    Решение: я взял свойства проекта и увидел, что сопоставления «Папка пакета исходного кода» в ветке «Источники» были пустыми. Я нанес на карту и вуаля это работает.

Теперь любой может подумать, что это было очень глупо с моей стороны. Хотя я новичок в Java и Netbeans, я не первый раз импортирую примеры проектов, и я увидел, что все они имеют похожие свойства. Единственное отличие, которое я увидел, заключалось в том, что основной класс не имел названия в качестве проекта, который, я считаю, является соглашением Java. Я использую JDK7u51 (последний до даты), это вызывает проблему? Я понятия не имею. Но я рад, что сейчас проект работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...