2012-05-01 4 views
2

При попытке скомпилировать и запустить мою программу в Eclipse SDK эта ошибка появляется. Я никогда не сталкивался с этим сообщением об ошибке, и другие сообщения не очень полезны. Что может быть причиной этого?Не удалось найти основной класс: программа выйдет

+1

Опубликовать соответствующий код и трассировку стека ошибки. – Bernard

+11

С этим множеством деталей, которые вы добавили, этот пост тоже не помогает. – joni

+1

@Matt: Вы заявляете в комментарии к одному из ответов, на котором вы нашли решение. В соответствии с просьбой, пожалуйста, примите ответ. Если ваше решение не было охвачено одним из ответов, вы можете сами ответить на вопрос, а затем принять этот ответ. – GreenMatt

ответ

1

Вы пытаетесь запустить класс java, который не имеет основного метода. Добавьте основной метод и попросите его использовать метод «стартер».

public static void main(String[] args){ 
    MyClass mc = new MyClass(); 
    mc.myStarterMethod(); 
} 
1

Когда вы запускаете программу java, она должна знать, с чего начать. В Java, конвенция является основным методом, со следующей подписью:

public static void main(string[] arguments) 

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

Если у вашей программы был список разных методов, как бы он знал, какой из них вы хотите запустить? Хотели бы вы, чтобы он запускал каждый метод, который он нашел один раз? Это было бы плохо.

Так что вам нужно что-то вроде

public static void main(string[] arguments){ 
    System.out.println("here"); 
    //Call your methods 
    //myFunction(); 
    //doThing(); 
    return; 
} 
2

ошибка ничего не говорит о «главном» метода. В нем говорится, что он не может найти основной класс ...

Итак, я немного искал Google, и для этого есть множество причин: начиная с неправильной версии ANT (для проектов на основе ant) ​​и включая классы java скомпилировано с JRE7 и работает с JRE6 ...

Не могли бы вы предоставить нам дополнительную информацию о вашем окружении? Что вы подразумеваете под Eclipse SDK? Это Eclipse IDE? Какой проект вы создаете? Исходный код?

Google это немного больше, есть много хитов, один может вам помочь.

+0

спасибо за все ответы, я получил его работу. – Matt

+0

может ли администратор закрыть тему, пожалуйста? – Matt

+1

Это не форум. Примите ответ, который, по вашему мнению, более полезен. Если вы не знаете, как это сделать, проверьте эту ссылку http://stackoverflow.com/faq#howtoask – StepTNT

9

Если у вас есть метод main() и по-прежнему его принимаете, ошибка также может появляться как часть ошибки потока, если вы также получаете ошибку noclassdeffound. Если это новая проблема с существующей программой, с которой у вас были успехи раньше, возможно, это связано с ошибкой компиляции. Удалите скомпилированный файл jar и перекомпилируйте.

1

У меня внезапно возникла эта проблема, когда я попытался запустить классы, которые будут работать отлично, и да, у них были методы main(), я неожиданно получил вышеуказанную ошибку. Я trid проект чист и перестроен, но безрезультатно, довольно разочаровывающе.

Я просмотрел вкладку «Проблемы» и сказал, что мне не хватает нескольких файлов jar библиотеки, я посмотрел в свое рабочее пространство, и мои .java-файлы были там, но там же, в/bin, не было .class, поэтому он не смог найти классы.

Что я сделал, был перемещен каталог, содержащий файлы jar библиотеки, поэтому перемещение этих файлов библиотеки назад, при повторном запуске eclipse разобрали его.

+2

Отличный совет по проверке вкладки «Проблемы». У меня была аналогичная проблема. Я жестко закодировал путь к файлу jar, но когда я установил окна на другой раздел, этот путь больше недействителен, и eclipse не будет компилировать никакие java-файлы, если этот путь не был исправлен. – user674669

0

У меня была такая же проблема после отключения питания, Eclipse не компилировался и не начал мой проект. Был ли проект очистки проекта -> чистым, и он решил мою проблему.

0

Были проблемы с Eclipse на пути.

Лучший способ, который я нашел для отладки, - перейти в диалоговое окно «Запуск конфигурации», затем щелкнуть по «общей» подпозиции и сохранить конфигурацию запуска в виде «общего файла» в каталоге вашего проекта ,

Затем вы можете просмотреть файл запуска, чтобы узнать, есть ли что-то очевидное.

Например, самая недавняя причина, по которой Eclipse не запускает мой основной класс, заключается в том, что я экспериментировал с плагином maven m2eclipse, и это привело к отказу от конфигурации запуска, так что было добавлено объявление пути класса m2eclipse.

Это сказало мне, что мне нужно удалить проект проекта maven из проекта, который, в свою очередь, очистил остатки maven/m2eclipse из файла запуска (автоматически), и мой класс затем мог работать правильно. Только один из многих интересных способов, которыми может показаться эта ошибка.

0

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

6

Я новый человек с Java. и то же самое случилось со мной после того, как я внес некоторые изменения в мои проекты, чтобы использовать другой jdk. Я изменил свои проекты на ссылку jdk 1.6 вместо 1.7. Затем я начал получать эту ошибку. Когда я перешел к свойствам проекта -> Компилятор Java, я заметил, что во всех выпадающих списках было 1,7. Я изменил настройки рабочей области, чтобы использовать 1.6, и все начало работать. Это сообщение Игоря привело меня к этой резолюции.

+0

Спасибо, Джим, я попробовал разные решения, но ваша проблема решена ... – Aniket

2

правой кнопкой мыши на имя Вашего проекта в проводнике проекта выберите свойства выберите Java компилятор выберите версию JRE (например, 1.6), которые установлены на вашей системе в Compiler уровня соответствия, а затем нажмите ОК и запустите программу! Готово!

+0

Это сработало для меня, я работаю с java 6, я сменил компилятор на java 5, скомпилировал проект после компиляции, и снова вернул его в java 6 и решил мою проблему. Благодаря! – Israelm

0

Вы можете получить это, если используете оператор пакета, но ваш исходный код не находится в пути, указанном в инструкции пакета.

0

Эта ошибка показана для версии компилятора jdk. Пожалуйста, используйте правильный компилятор (например, jre1.6 или 1.7), который подходит.

0

У меня была аналогичная проблема с eclipse ide.

1 go to run menu 
2 go to run configurations 
3 see the error on the title bar (top of screen) 
4 these errors are caused due to compatibility jre 1.6 or jre 1.7 
5 choose accordingly the execution path 
6 run your program 
0

очистить и перестроить проект решил мою проблему.