2017-08-29 4 views
0

Die Datei „HelloDemo.java“ Pfad „/test/hello/HelloDemo.java“Fehlerklasse nicht festgelegt gefunden, aber ich verstehe nicht, warum

ist
package test.hello; 

public class HelloDemo { 
    public static void main(String[] args) { 
     System.out.print("Hello!!"); 
    } 
} 

als ich „run“ es ist ein Fehler aufgetreten.

Building HelloDemo.java and running HelloDemo 
Error: Could not find or load main class HelloDemo 

Dann habe ich den Code geändert.

Wenn ich es "Ausführen", Code-Erfolgsausgabe.

Building HelloDemo.java and running HelloDemo 
Hello!! 

Dies ist die screenshot über das "Ausführen". Ich habe einen Fehler behoben, aber ich weiß nicht warum, ich brauche Hilfe, Danke!

Wenn ich das Paket unkommentieren möchte, wie es zu beheben?

+1

Ihre erste "unfixed" Version läuft genauso gut wie die zweite. Haben Sie vielleicht vergessen, es nach dem Hinzufügen der Hauptmethode zu speichern? –

+0

Ich habe es gespeichert, bevor es läuft. Meine IDE ist ide.cloud9.io –

Antwort

0

Das liegt daran, dass Sie wahrscheinlich den Speicherort Ihrer Datei geändert haben, nachdem Sie sie bereits einmal ausgeführt haben. Daher sollte sich die laufende Konfiguration ändern, um nach der neuen test.hello.HelloDemo-Klasse in dem eingebauten Jar und nicht mehr nach HelloDemo zu suchen (was ursprünglich wahrscheinlich im Standardpaket war). Was ist deine IDE?

Bemerkung: Dies ist nicht, weil Sie den Speicherort der Datei geändert haben, dass der Klassenpfad geändert wurde, und umgekehrt.

Auf IntelliJ, sollten Sie dies tun: https://www.jetbrains.com/help/idea/creating-and-editing-run-debug-configurations.html

+0

Meine IDE ist ide.cloud9.io –

+0

Überprüfen Sie diesen Link: https://docs.c9.io/docs/running-and-debugging-code Und ändern Sie die laufende Konfiguration, um die richtige Klasse zu setzen. Wenn Sie "package X.Y" in die Datei einfügen, lautet Ihr Klassenpfad X.Y.ClassName – belka

+0

Bitte markieren Sie die Frage als beantwortet, wenn diese Ihre Frage beantwortet. – belka

0

Erstellen Sie ein Paket mit Ihrer IDE und fügen Sie Ihre Klasse hinzu. Der Paketname wird automatisch an den Anfang angehängt. Unabhängig von der IDE sollte die Ordnerstruktur der Paketstruktur entsprechen, Ihr Problem könnte hier liegen.

+0

Paketname wird oben automatisch in der IDE cloud9 angehängt? Warum kann ich es nicht sehen? –

+0

Sie müssen dann manuell die Ordnerhierarchie mit der Pakethierarchie abgleichen. –

0

Der Name einer Klasse ist eigentlich das Paket zuzüglich der Klassenname. Sie können HelloDemo in Ihrem ersten Fall nicht ausführen, da das der Klassenname nicht ist. Der Klassenname lautet test.hello.HelloDemo.

Durch das Auskommentieren des Pakets haben Sie die Klasse im Wesentlichen in HelloDemo umbenannt, so dass es ausgeführt wird.

Wenn Sie die Klasse mit main ausführen, müssen Sie sich außerdem an der richtigen Position befinden. Wenn die Klasse beispielsweise test.hello.HelloDemo lautet, lautet Ihre Ordnerstruktur /test/hello/HelloDemo.java.

Sie müssen in / sein und test.hello.HelloDemo von dort ausführen.

Verwandte Themen