Wenn sich die Klasse in einem Paket befindet
package thepackagename;
public class TheClassName {
public static final void main(String[] cmd_lineParams) {
System.out.println("Hello World!");
}
}
Dann Aufruf:
java -classpath . TheClassName
ergibt Error: Could not find or load main class TheClassName
. Dies liegt daran, dass es mit seinem vollqualifizierten Namen aufgerufen werden muss:
java -classpath . thepackagename.TheClassName
Und diese thepackagename
Verzeichnis muss im Klassenpfad vorhanden sein. In diesem Beispiel .
, also das aktuelle Verzeichnis, ist die Gesamtheit des Klassenpfads. Daher muss dieses spezielle Beispiel aus dem Verzeichnis aufgerufen werden, in dem sich thepackagename
befindet existiert.
Der Name dieser Klasse ist nicht TheClassName
, Es ist thepackagename.TheClassName
. Versuch, TheClassName
auszuführen funktioniert nicht, weil keine Klasse mit diesem Namen existiert . Jedenfalls nicht auf dem aktuellen Klassenpfad.
Beachten Sie schließlich, dass die kompilierte (.class) Version ausgeführt wird, nicht der Quellcode ( .java)-Version. Daher „CLASSPATH.“
Sie müssen sicherstellen, dass Sie den Standort Ihres .class
hinzufügen Datei in Ihren Klassenpfad. Wenn es sich also im aktuellen Ordner befindet, fügen Sie .
hinzu zu Ihrem Klassenpfad hinzufügen. Beachten Sie, dass das Windows-Klassenpfadtrennzeichen ein Semikolon ist, d. h. ein ;
.