Ich habe gerade den Scala-Beispielcode auf der Scala-Website durchgesehen, aber beim Versuch, ihn auszuführen, ist ein nerviger Fehler aufgetreten.
Hier ist der Code: http://www.scala-lang.org/node/45 . Beim Ausführen unter Eclipse wurde die Meldung "Editor enthält keinen Haupttyp" angezeigt, die die Ausführung verhindert.
Muss ich irgendetwas tun ... dh diese Datei in mehrere Dateien aufteilen, oder was?
Stellen Sie in Eclipse sicher, dass Sie Ihren Quellordner in den Projekteigenschaften -> Java-Erstellungspfad -> Quelle hinzufügen. Andernfalls ist die Funktion main () möglicherweise nicht in Ihrem Projekt enthalten.
quelle
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.
quelle
Eine einfachere Möglichkeit besteht darin, das Projekt zu schließen und erneut zu öffnen.
quelle
Stellen Sie einfach sicher, dass der Ordner, in dem Sie arbeiten, dem erstellten Pfad hinzugefügt wird:
right-click
Ihr Ordner ->build Path
->Use as source Folder
und es sollte jetzt
main
darin finden .quelle
Ich hatte das gleiche Problem. Ich habe alle möglichen Dinge ausprobiert. Und das habe ich erfahren
Dinge, die ich getan habe:
Projekteigenschaften >> Java Build Path >> Quelle
Dies löste den Fehler.
quelle
Sie können versuchen, die Hauptfunktion über die Umriss-Seitenleiste von Eclipse auszuführen.
quelle
<project root> [in Tut_RMI] does not exit
. (Der Projektname istTut_RMI
) Ist dieser Projektname ungültig?*** Ihr Projekt in Eclipse. Manchmal gibt es Verbindungsprobleme. Dies löste mein Problem
quelle
Eine schnelle Lösung:
Schließen Sie zunächst das Paket aus: Klicken Sie mit der rechten Maustaste auf das Quellpaket >> Erstellungspfad >> Ausschließen
Fügen Sie es dann wieder hinzu: Klicken Sie mit der rechten Maustaste auf das Quellpaket >> Pfad erstellen >> Einschließen
quelle
Sie sollten lediglich ein Java-Projekt erstellen. Stellen Sie jedoch sicher, dass Sie diese Datei in die Paketdatei dieses Projekts einfügen. Andernfalls tritt der gleiche Fehler auf.
quelle
Dieser Code ist gültig. Haben Sie versucht, es von Hand mit Scalac zu kompilieren? Haben Sie Ihre Datei auch "Adressbuch" genannt, alles in Kleinbuchstaben, wie der Name des Objekts?
Außerdem habe ich festgestellt, dass Eclipse aus irgendeinem Grund die Hauptklasse auf ".addressbook" anstelle von "addressbook" gesetzt hat.
quelle
Sie sollten Ihre Datei von erstellen
Wenn Sie auf der rechten Seite auswählen, finden Sie Ihren Dateinamen.
Darunter finden Sie den Ordner src. Klicken Sie mit der rechten Maustaste auf Auswahl -> Klassenoption
Ihre Ihre Datei sollte erstellt werden
quelle
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 ausgelöst.
quelle
Haben sich dem ähnlichen Problem gestellt, dieses durch Klicken mit der rechten Maustaste auf die Hauptmethode in der Gliederungsansicht behoben und als Java-Anwendung ausgeführt.
quelle
Ich hatte gerade auch 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 Ordner src (und importieren Sie die eventuellen Abhängigkeiten). Dies sollte das Problem beheben.
quelle
Die richtige Antwort lautet: Die Scala-Bibliothek muss vor der JRE-Bibliothek im Buildpath stehen.
Gehen Sie zu Java Buildpath> Bestellen und Exportieren und verschieben Sie die Scala-Bibliothek nach oben
quelle
Ich hatte dieses Problem mit einem Java-Projekt, das ich aus dem Dateisystem (unter Eclipse Helios) importiert habe. Hier ist 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 neu erstellen (mit dem Assistenten) und dann das vergleichen
.project
Dateien der nicht funktionierenden und funktionierenden Projekte vergleichen.Das Projekt "Editor enthält keinen Haupttyp" hatte dies als "buildSpec" in der .project-Datei:
Aber das Arbeitsprojekt hatte dies als "buildSpec":
Ich habe dies kopiert und das importierte Projekt hat funktioniert.
Ich weiß, dass meine Antwort für Java ist, aber das gleiche könnte das Problem für Ihr Scala-Projekt sein.
quelle
Möglicherweise befindet sich die von Ihnen erstellte Datei außerhalb des Ordners src (Quelle). Der Versuch, das Klassenobjekt (aus 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.
quelle
Ich hatte das gleiche Problem. Ich hatte die Hauptklasse aus dem src-Paket in einem anderen Ordner. Ich verschiebe es in und korrigiere Ordner und gelöst
quelle
Führen Sie "eclipse -clean -refresh" über die Befehlszeile aus. Dies hat das Problem für mich behoben, als alle anderen Lösungen fehlschlugen.
quelle
Dies könnte das Problem mit dem Java Build-Pfad sein. Versuchen Sie die folgenden Schritte:
Dies sollte das Problem beheben.
quelle
Wenn es sich um ein Maven-Projekt handelt, überprüfen Sie bitte, ob die Java-Datei unter src / main / java erstellt wurde
Wenn Sie nicht erhalten, ändern Sie bitte den JRE-Pfad und erstellen Sie die Java-Dateien in der obigen Ordnerstruktur
quelle
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 diese verursacht:
Der Dubugger konnte dies nicht selbst erkennen. Ich bin ziemlich überrascht, dass Eclipse dies übersehen hat.
quelle
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 vorliegt. Ich habe es einmal geschafft, es zu lösen, aber als weitere Entwicklungen durchgeführt wurden, kam der Fehler zurück. Das Wiederherstellen von allem von Anfang an hat mir geholfen, einige Links zu verstehen und zu optimieren, und jetzt bin ich zuversichtlich, dass es richtig funktioniert.
quelle
Befolgen Sie die folgenden Schritte:
quelle
Datei >> Importieren >> Vorhandene Projekte in den Arbeitsbereich >> Archiv archivieren >> Datei suchen und suchen >> Fertig stellen. 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 das versuchte.
quelle
Noch etwas zu überprüfen: Stellen Sie sicher, dass Ihre Quelldatei die richtige Paketdeklaration enthält, die dem Unterverzeichnis entspricht, in dem sie sich befindet. Der vom OP erwähnte Fehler wird angezeigt, wenn Sie versuchen, einen "Haupttyp" auszuführen, der in einer Datei in einem Unterverzeichnis deklariert ist Fehlen der Paketanweisung.
quelle
Ich habe dieses Problem auch, nachdem ich den Quellordner geändert habe. Die Lösung, für die es funktioniert hat, besteht darin, die Datei zu bearbeiten und zu speichern.
quelle
Versuchen Sie 'Projekt aktualisieren'. Sobald ich dies getan habe, wurde die Option Als Java-Anwendung ausführen angezeigt.
quelle
In meinem speziellen Fall "Hallo Welt" war die Ursache für dieses Problem die Tatsache, dass sich meine
main()
Methode innerhalb der Scala befandclass
.Ich habe die
main()
Methode unter die Scala gestelltobject
und der Fehler ist verschwunden.Dies liegt daran, dass Scala
object
in Java die Entität ist, in der sich nur statische Elemente und Methoden befinden.Deshalb muss Java
public static void main()
in Scala unter platziert werdenobject
.(Scala
class
darf keine statischen Aufladungen enthalten)quelle