wake-up-neo.net

Fehler: Auswahl enthält keinen Haupttyp

Ich versuche, einige Java-Dateien in einem neuen Projekt auszuführen. Also mache ich das Projekt, füge die Dateien hinzu und versuche, die Hauptdatei auszuführen, damit mein Spiel beginnt. 

Ich erhalte eine Fehlermeldung, die selection does not contain a main type sagt.

Ich habe verschiedene Wege ausprobiert, um es auszuführen:

  • Einige sagen, Eclipse noch einmal zu starten, habe dies ein Dutzend Mal versucht. 
  • Irgendwo anders hat jemand darauf hingewiesen, ein neues Projekt zu öffnen und einen Pfad zum alten Projekt zu erstellen. 

Hat auch nicht funktioniert. 

Ich bin mir ziemlich sicher, dass es funktionieren muss, weil ich es vor ein paar Stunden in der Schule laufen ließ. Wie bekomme ich das zum Laufen? Danke im Voraus! 

37
user2321611

Ich hoffe, Sie versuchen, die Hauptklasse auf diese Weise zu starten. Siehe Screenshot: enter image description here

Wenn nein, versuchen Sie es auf diese Weise und wenn ja, stellen Sie sicher, dass Ihre Klasse die Hauptmethode i-e hat 

public static void main(String[] args){ // some code here}

gleiche Definition. Hoffe, das wird dir helfen.

19
NoNaMe

Die anderen Antworten sind alle gültig. Wenn Sie jedoch weiterhin ein Problem haben, befindet sich Ihre Klasse möglicherweise nicht im Ordner src. In diesem Fall wird Eclipse die Komponente möglicherweise nicht als Teil des Projekts sehen. Dies würde auch die gleiche Fehlermeldung aufrufen, die Sie gesehen haben. 

44
zen

Klicken Sie mit der rechten Maustaste auf den Ordner, in den Sie Ihre Hauptklasse einfügen, und klicken Sie dann auf Build Path -> Use as Source Folder.

Führen Sie schließlich Ihre Hauptdatei als Java-Anwendung aus. Hoffen Sie, dass dieses Problem gelöst wird.

43
Rashid

Der Einstiegspunkt für Java-Programme ist die Methode:

public static void main(String[] args) {
    //Code
}

Wenn Sie dies nicht haben, wird Ihr Programm nicht ausgeführt. 

6
Aza

Ich habe das Problem gelöst, indem ich einen neuen Quellordner hinzugefügt und meine Java-Datei in diesen Ordner eingefügt habe. "Quellordner" ist nicht irgendein Ordner, an den ich glaube. Es ist ein spezieller Ordnertyp für Java/Eclipse und kann in Eclipse hinzugefügt werden, indem Sie mit der rechten Maustaste auf Projekt -> Eigenschaften -> Java-Pfad -> Quelle klicken und einen Ordner hinzufügen

5
mishal153

Einige Dinge zum Auschecken:

  1. Hast du ein Hauptpaket? Sind alle Ihre Klassen im Rahmen dieses Pakets?
  2. Verwenden Sie eine Hauptklasse mit öffentlichem statischem void main (String [] args)?
  3. Erklären Sie: Paket; in deiner Hauptklasse?
  4. Sie können das Projekt jederzeit bereinigen, bevor Sie es ausführen. In Eclipse - Gehen Sie einfach zu Project -> clean und führen Sie die App erneut aus. 
3
Eyal Sooliman

Ich bin auf das gleiche Problem gestoßen. Ich habe das Problem behoben, indem Sie mit der rechten Maustaste auf das Paket -> Eigenschaften -> Java Build Path -> Ordner hinzufügen klicken.

3
Yang Zhang

Ich verwende Eclipse von Ubuntu. Hatte das gleiche Problem und konnte das Programm über das Terminal ausführen. Also habe ich die vorhandene public static void main(String[] args) { direkt unter die Klassendeklaration verschoben (sie wurde automatisch von Eclipse formatiert) und der nächste Start war erfolgreich. Dann wurde die Hauptmethode wieder an den vorherigen Ort verschoben und diesmal funktionierte sie einwandfrei.

2
hipokito

Sie müssen alle Ihre Dateien (file.Java) unter dem StammordnerSRCablegen.

1
Dev M

Legen Sie Ihre Hauptklassendatei Java in den Ordner _src/main/Java_ und überprüfen Sie, ob in 'Java Build Path' ein Fehler vorliegt, indem Sie mit der rechten Maustaste auf das Projekt klicken und _Java Build Path->Source_ auswählen.

1
Rajiv Ranjan

Wenn Sie mit einem Maven-Projekt arbeiten, müssen Sie verstehen, dass das Verzeichnislayout ein bisschen anders ist. In diesem Fall muss der Paketname src/main/Java lauten.

Für dieses Update klicken Sie mit der rechten Maustaste auf project root folder -> properties -> Java build path -> source tab. Hier entfernen Sie alle anderen Quellordner wie sie sind wurde möglicherweise falsch hinzugefügt. Wählen Sie nun project/src/main/Java als Quellordner. Fügen Sie die Änderungen hinzu und übernehmen Sie sie. Aktualisieren Sie nun Ihren Arbeitsbereich mit F5.

Dies sollte das Problem beheben, dass ein Haupttyp nicht erkannt wird.

0

Ich hatte dieses Problem in zwei Projekten. Maven und Kommandozeile funktionierten für beide wie erwartet. Die Probleme waren Eclipse-spezifisch. Zwei verschiedene Lösungen: Projekt 1): Verschieben Sie die Hauptmethodendeklaration innerhalb der Klasse nach oben, vor allen anderen Deklarationen wie Feldern und Konstruktoren. Verrückt, aber es hat funktioniert. Projekt 2): Die Lösung für Projekt 1) hat das Problem nicht behoben. Das Problem wurde jedoch behoben, indem Lombok-Importe entfernt und explizit eine Getter-Methode geschrieben wurden

Fazit: Eclipse und/oder das Lombok Plugin haben/haben einen Bug.

0
Øyvind Roth

Stellen Sie sicher, dass die main in public static void main(String[] args) Kleinbuchstaben ist. Für mich hat es nicht funktioniert, als ich es mit Großbuchstaben hatte.

0
sander

Stellen Sie beim Speichern der Datei sicher, dass sie die Erweiterung .Java hat. Ist dies nicht der Fall, kann Eclipse es nicht als Java-Datei lesen.

0
KC McLaughlin

Ich hatte dies wiederholt, nachdem ich einem Projekt in Eclipse Bilder hinzugefügt und sie in den Erstellungspfad aufgenommen hatte. Die Lösung bestand darin, mit der rechten Maustaste auf die Klasse zu klicken, die die main-Methode enthält, und dann Ausführen als -> Java-Anwendung auszuwählen. Es scheint, dass Eclipse beim Hinzufügen einer Datei zum Build-Pfad automatisch davon ausgeht, dass sich in der Datei die main-Methode befindet. Wenn Sie das Menü Ausführen als durchlaufen und nicht nur auf die grüne Schaltfläche Ausführen als klicken, können Sie den korrekten Einstiegspunkt angeben.

0
Keven M

Klicken Sie mit der rechten Maustaste auf> Run AS> Run Configurations

Wenn in diesem Bildschirm das Textfeld "Hauptklasse" leer ist, fügen Sie den Klassennamen hinzu, indem Sie auf die Schaltfläche "Suchen" rechts neben dem Textfeld klicken und die Klassendatei auswählen. Klicken Sie dann unten im Konfigurationsbildschirm auf die Schaltfläche "Ausführen". Das ist es

0
Yithirash

Ich stieß auf das gleiche Problem und stellte fest, dass es ein zusätzliches Paar geschweifte Klammern gab, die die öffentliche statische Leere (String args) {...} umschlossen. Diese Methode sollte wirklich im oberen Bereich der Klasse stehen und sollte nicht in geschweiften Klammern stehen. Es scheint, dass es möglich ist, in Eclipse mit Klammern um diese Methode zu enden. Dies kann nur eine Möglichkeit sein, dieses Problem bei der Arbeit mit Eclipse zu erkennen. Viel Spaß beim Codieren!

0
shivesh suman