webentwicklung-frage-antwort-db.com.de

Der Editor enthält keinen Haupttyp

Ich habe nur den Beispiel-Scala-Code auf der Scala-Website durchgesehen, aber beim Ausführen ist ein ärgerlicher Fehler aufgetreten.

Hier ist der Code: http://www.scala-lang.org/node/45 . Beim Ausführen auf Eclipse erhielt ich die Meldung "Editor enthält keinen Haupttyp", der die Ausführung verhindert.

Gibt es etwas, was ich tun muss ... dh die Datei in mehrere Dateien aufteilen oder was?

85
Helen Neely

Ich habe dieses Problem häufig mit Eclipse und Scala. Dies ist hilfreich, wenn Sie Ihren Arbeitsbereich reinigen und Ihr Projekt neu erstellen.

Manchmal erkennt Eclipse nicht richtig, welche Dateien neu kompiliert werden müssen :(

Edit: Der Code läuft gut in Eclipse

34
nuriaion

Stellen Sie sicher, dass Sie in Eclipse Ihren Quellordner in den Projekteigenschaften -> Java-Erstellungspfad -> Quelle hinzufügen. Andernfalls ist die Funktion main () möglicherweise nicht in Ihrem Projekt enthalten.

87
milkplus

Sie müssen sicherstellen, dass sich Ihre .Java-Dateien im Ordner .src in Eclipse befinden. Ich hatte genau das gleiche Problem, bis ich es herausgefunden hatte.

27
ultra99

Einfacher ist es, Ihr Projekt zu schließen und wieder zu öffnen!

21
static

Stellen Sie einfach sicher, dass der Ordner, in dem Sie arbeiten, dem erstellten Pfad hinzugefügt wird:

right-click Ihren Ordner, -> build Path -> Use as source Folder

und es sollte jetzt main darin finden

hoffe das hilft

"" "" "right-click Ihren Ordner, -> build Path -> Use as source Folder____" ".__

Das löst das Problem, 

17

Ich hatte das gleiche Problem. Ich habe alles Mögliche ausprobiert. Und das wusste ich

  1. Meine .Java-Dateien wurden nicht verknüpft und 
  2. sie wurden nicht im Ordner 'src' abgelegt.

Dinge, die ich gemacht habe:

Projekteigenschaften >> Java Build Path >> Source 

  • Der ursprüngliche "src" -Ordner wurde mit der Option "Entfernen" leer gelöscht
  • Die Quelle, die meine .Java-Quelldateien enthielt, wurde mit der Option 'Ordner hinzufügen' hinzugefügt

Dies hat den Fehler behoben.

6
Anand Dhole

Eine schnelle Lösung: 

Schließen Sie zunächst das Paket aus: Klicken Sie mit der rechten Maustaste auf das Quellpaket >> Erstellungspfad >> Ausschließen

Dann fügen Sie es zurück: Klicken Sie mit der rechten Maustaste auf das Quellpaket >> Build-Pfad >> Include

3
rwc

Sie sollten ein Java-Projekt erstellen. Stellen Sie jedoch sicher, dass Sie diese Datei in die Paketdatei dieses Projekts einfügen. Andernfalls wird der gleiche Fehler angezeigt.

enter image description here

3
AbsintheSyringe
***

Einfach schließen und wieder öffnen

*** Ihr Projekt in Eclipse. Manchmal gibt es Verbindungsprobleme. Das hat mein Problem gelöst

3
Mohit Singh

Sie können versuchen, die Hauptfunktion über die Umriss-Seitenleiste von Eclipse auszuführen.

solution

2
Fei

sie sollten Ihre Datei mit erstellen 

wählen Sie auf der rechten Seite Ihren Dateinamen aus.

unter diesem finden Sie den SRC-Ordner, indem Sie mit der rechten Maustaste auswählen -> Klassenoption

ihre Datei sollte erstellt werden

2
vijaya

Stellen Sie sicher, dass Ihre .Java-Datei entweder im str-Paket oder in einem anderen Paket vorhanden ist. Wenn sich die Java-Datei mit der Hauptfunktion außerhalb aller Pakete befindet, wird dieser Fehler ausgegeben.

2
Sahil Pruthi

Dieser Code ist gültig. Haben Sie versucht, es mit scalac von Hand zu kompilieren? Haben Sie Ihre Datei auch "Adressbuch" genannt, alles in Kleinbuchstaben, wie der Name des Objekts?

Ich fand auch, dass Eclipse aus irgendeinem Grund die Hauptklasse auf ".addressbook" anstelle von "Adressbuch" gesetzt hat.

2

Möglicherweise befindet sich die Datei, die Sie erstellt haben, außerhalb des Quellverzeichnisses src. Der Versuch, das Klassenobjekt (von der Datei im Ordner "src") aus der .Java-Datei außerhalb des Quellordners aufzurufen, führt zu demselben Fehler. Kopieren Sie die .Java-Datei in den Quellordner und erstellen Sie sie. Der Fehler wird verschwunden sein.

1
Vamsi Tallapudi

führen Sie "Eclipse -clean -refresh" von der Befehlszeile aus. Dies behebte das Problem für mich, als alle anderen Lösungen versagten. 

1
MikeG

Ich hatte auch gerade dieses Problem. Die Lösung besteht darin, sicherzustellen, dass Eclipse das Projekt als Java-Projekt erstellt hat. Erstellen Sie einfach ein neues Java-Projekt und kopieren Sie Ihre Klasse in den src-Ordner (und importieren Sie eventuelle Abhängigkeiten). Dies sollte das Problem beheben.

1
KullDox

Ich hatte das gleiche Problem. Ich hatte die Hauptklasse aus dem SRC-Paket in einem anderen Ordner. Ich ziehe es in einen korrekten Ordner und löste es

1
jacruz

Wenn es sich um ein Maven-Projekt handelt, prüfen Sie, ob die Java-Datei unter src/main/Java erstellt wurde

Wenn Sie dies nicht erhalten, ändern Sie bitte den JRE-Pfad und erstellen Sie die Java-Dateien in der obigen Ordnerstruktur

1
user3801543

Dies könnte das Problem mit dem Java Build-Pfad sein. __ Versuchen Sie die folgenden Schritte:

  1. Gehen Sie zu Projekteigenschaften 
  2. Gehen Sie zu Java Build Path
  3. Gehen Sie zur Registerkarte "Quelle" und fügen Sie den SRC-Ordner des Projekts hinzu

Dies sollte das Problem beheben.

1
AalekhG

Die richtige Antwort lautet: Die Scala-Bibliothek muss sich vor der JRE-Bibliothek im Buildpfad befinden. 

Gehen Sie zu Java Buildpath> Bestellen und Exportieren und verschieben Sie die Scala-Bibliothek nach oben

1
MGM

Dieses Problem hatte ich mit einem Java-Projekt, das ich aus dem Dateisystem importiert hatte (unter Eclipse Helios). Hier ein Hinweis: Der src-Code schien überhaupt nicht kompiliert zu sein, da kein "bin" -Verzeichnis angezeigt wurde.

Ich musste ein Java-Projekt von Grund auf erstellen (mit dem Assistenten) und dann die .project-Dateien der nicht funktionierenden und der funktionierenden Projekte vergleichen.

Das Projekt "Editor enthält keinen Haupttyp" hatte dies als "buildSpec" in der .project-Datei:

<buildSpec>
</buildSpec>

Das Arbeitsprojekt hatte jedoch folgende "buildSpec":

<buildSpec>
    <buildCommand>
        <name>org.Eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

Ich habe das kopiert und das importierte Projekt funktionierte.

Ich weiß, meine Antwort ist für Java, aber das gleiche könnte das Problem für Ihr Scala-Projekt sein.

1
user2704136

Ich habe dieses Problem auch, nachdem ich den Quellordner geändert habe. Die Lösung, für die gearbeitet wurde, ist, die Datei zu bearbeiten und zu speichern. 

0
Hunsu

Grund für einen Fehler von: "Editor enthält keinen Haupttyp"

Fehler bei: Eclipse Neon

Betriebssystem: Windows 10 Pro

Wenn Sie Ihre Quellordner von einem USB-Stick kopieren und den Ordner Eclipse_Projects.metadata auslassen. 

Abgesehen von einer Neuinstallation müssen Sie sicherstellen, dass Sie die Dateien aus (Thrumb-Laufwerk) F: Eclipse_Projects.metadata.plugins zusammenführen. 

Diese Plug-Ins sind die Bits und Teile des Bibliothekscodes, die beim Erstellen einer Klasse aus dem SDK entnommen werden. Ich hängt wirklich alles davon ab, was Sie ----- javax.swing. *; ----- in Ihre Datei importieren. Da Sie die Datei übertragen, stellen Sie sicher, dass Sie die ------ Eclipse_Projects.metadata.plugins ------ manuell mit einem einfachen Kopieren und Einfügen zusammenführen, während Sie die Skip-Funktion für bereits vorhandene Plugins in Ihrem Ordner akzeptieren.

Für Windows 10: Sie können Ihre Arbeitsordner nach einem ähnlichen Muster der Dateihierarchie finden. 

C: Benutzer> Mikes Laptop> Arbeitsbereich> .metadata> .plugins <--- Plugins hier einfügen

0
WantaBeCoder

In Eclipse 3.6 tritt dieses Problem für mich auf, wenn meine Hauptmethode nicht öffentlich ist. Ich habe das Problem durch eine Hauptmethode wie folgt verursacht:

static void main(String[] args) 

Der Dubugger konnte das selbst nicht erkennen. Ich bin ziemlich überrascht, dass Eclipse dies übersehen hat.

0
djangofan

Noch etwas zu überprüfen: Stellen Sie sicher, dass Ihre Quelldatei die korrekte Paketdeklaration enthält, die dem darin enthaltenen Unterverzeichnis entspricht. Der vom OP genannte Fehler kann angezeigt werden, wenn Sie versuchen, einen "main type" auszuführen, der in einer Datei in einem Unterverzeichnis deklariert ist Die Paketanweisung fehlt.

0
Daniel Ashton

Befolgen Sie die folgenden Schritte:

  1. Sichern Sie alle Ihre .Java-Dateien an einem anderen Ort
  2. löschen Sie das gesamte Java-Projekt
  3. Erstellen Sie ein neues Java-Projekt, indem Sie mit der rechten Maustaste auf root klicken und auf neu klicken
  4. stellen Sie alle Dateien an einem neuen Ort wieder her !!
0
Mani Kandan

Haben Sie ein ähnliches Problem festgestellt, das Problem gelöst, indem Sie mit der rechten Maustaste auf die Hauptmethode in der Gliederungsansicht klicken und als Java-Anwendung ausführen. 

0
Naresh

Im schlimmsten Fall - erstellen Sie das Projekt erneut mit allen Importen von Anfang an. In meinem Fall hat keine der anderen Optionen funktioniert. Diese Art von Fehler weist darauf hin, dass in den Projekteinstellungen ein Fehler aufgetreten ist. Ich habe es einmal geschafft, das Problem zu lösen, aber sobald weitere Entwicklungen vorgenommen wurden, kam der Fehler zurück. Von Anfang an alles neu zu erstellen half mir, einige Links zu verstehen und zu optimieren, und jetzt bin ich überzeugt, dass es korrekt funktioniert.

0
Sergiu

In meinem speziellen Fall "Hallo Welt" war die Ursache für dieses Problem die Tatsache, dass sich meine main()-Methode in der Scala class befand.

Ich habe die main()-Methode unter der Scala object abgelegt und der Fehler ist verschwunden.

Dies liegt daran, dass Scala object in Java die Entität mit nur statischen Mitgliedern und Methoden ist.

Deshalb muss Javas public static void main() in Scala unter object platziert werden.

(Scala class darf keine statischen Elemente enthalten.)

0
Vlad.Bachurin

Datei >> Importieren >> Vorhandene Projekte in den Arbeitsbereich >> Wählen Sie Archivieren >> Durchsuchen und suchen Sie die Datei >> Fertigstellen. Wenn es bereits auf eine andere Weise importiert wurde, löschen Sie es und versuchen Sie es auf diese Weise. Ich hatte das gleiche Problem, bis ich es versuchte. 

0
Mike

Versuchen Sie 'Projekt aktualisieren'. Sobald ich dies getan habe, erschien die Option Als Java-Anwendung ausführen.

0
George Santhosh