Wie man laufen ein .class-Datei in Windows 7 OS?
Dies ist wahrscheinlich eine dumme Frage, aber wie führe ich eine Klasse-Datei auf windows 7? Ich in der Regel meine eigenen erstellen .java-Dateien und verwenden Sie dann eine basic-Entwicklungsumgebung (mit JDK6), um es zu kompilieren, eine Klasse und führen Sie es automatisch. Mein professor hat eine .Klasse-Datei, die wir spielen sollen mit ausführlich aber ich habe keine Ahnung, wie es laufen hier. Beachten Sie, dass ich kann nicht führen Sie es durch Eingabe von:
java classname.class
weil es enthält gui-Sachen, vor allem Tasten und so. Wenn ich die oben bekomme ich die folgende Fehlermeldung:
java.lang.NoClassDefFoundError: Test1/2/class
Caused by: java.lang.ClassNotFoundException: Test1.2.class
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: Test1.2.class. Program will exit.
Exception in thread "main"
Jegliche Hilfe würde sehr geschätzt werden. Danke.
InformationsquelleAutor jNoob | 2010-06-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie es ausführen, nicht
.class
suffix:das ist ein guter Punkt, ja.
Hi Jungs, ich umbenannt Test1.2.class zu Test.class und ich Folgendes eingetragen: "java Test" und es gab mir noch den oben genannten Fehler. Irgendwelche anderen Vorschläge?
Kann man nicht einfach umbenennen .Klasse Datei, die Sie brauchen, zu wissen, die Namen der eigentlichen java-Klasse innerhalb der Datei. Hat die Klasse noch eine
public static void main
Methode? Was hat dein professor erzählen, die Sie mit der Datei machen?Zitat vom professor: "Es besteht aus Java-Bytecode, so dass Sie sollten in der Lage sein, kopieren Sie es irgendwo und führen Sie es über die JVM."
InformationsquelleAutor Dean Harding
Zusätzlich zu den oben genannten, sollte es auch keine Verschiedenheit, was Ihre O/S ist. Java-byte-code kompiliert, der interpretiert wird, die von Ihrer JVM. Sie haben eindeutig eine zu installieren, da hast du den java-Fehler, den Sie eingefügt haben oben.
InformationsquelleAutor Matt
Wie codeka sagte, geben Sie
java ClassName
an der Befehlszeile ein, und wenn die Klasse eine main-Methode, es wird laufen.Java kompiliert jede Klasse definiert ist, in einer Datei oder in seiner eigenen Klasse (byte-code) - Datei. Zum Beispiel, Apple.class, Banana.class und Cherry.class vielleicht bekommen die Ausgabe nach der Kompilierung Apple.java wenn Sie alle sind dort definiert. So der eigentliche name der Klasse, in der Quelle wird mit dem Namen der Datei, ohne die Erweiterung.
Nun, lasst uns sagen, dass jemand versehentlich (oder absichtlich, aus dem Klang der es) umbenannt, die class-Datei. Sie haben eine Datei namens WrongName.java und Sie geben
java WrongName
. Beachten Sie, dass die Ausgabe beginnt mit der Zeile:Wo RightName ist, was es sein sollte. An diesem Punkt würden Sie benennen Sie Ihre Datei, um RightName.class geben Sie
java RightName
, und hoffentlich wird es laufen. Und wenn der name einen Schrägstrich, dann auch immer vor dem Schrägstrich ist der name des Pakets. Lassen Sie uns sagen, es ist PackageName/RightName. Zuerst müssen Sie erstellen Sie ein Verzeichnis namens PackageName, und setzen RightName.class innerhalb der it. Dann gehen Sie eine Ebene nach oben in Ihre Verzeichnisse, und geben Siejava PackageName.RightName
.Beachten Sie die verschiedenen Arten von Ausnahmen:
ClassNotFoundException
im Grunde bedeutet, dass Sie die class-Datei nicht gefunden wurde.NoClassDefFoundError
bedeutet, dass die Klasse definition wurde nicht gefunden. Wenn die Klasse keine main-Methode, und Sie versuchen, führen Sie es als ein Programm, Sie erhaltenNoSuchMethodError: main
.InformationsquelleAutor johncip