Java auf Ubuntu (NoClassDefFoundError)
lima-city → Forum → Programmiersprachen → Java
aufruf
code
compiler
datei
einstellung
frage
gleichen verzeichnis
helfen
installation
konsole
legen
native
passenden pfad
pfad
punkt
run
uni
variable eintragen
verzeichnis
verzweifeln
-
Hallo
also ich habe mir hier auf ubuntu das java-sdk6 instaliert.
Wollt jetzt mal ein einfaches \'hello world\' schreiben und ausführen,
das javac compilieren hat auch geklappt aber beim ausführen kommt:
Exception in thread \"main\" java.lang.NoClassDefFoundError: jtest/class Caused by: java.lang.ClassNotFoundException: jtest.class at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
ich nehme fasst an das es am Classpath liegt, nur weiß ich leider nicht wie, wo und auf welches verzeichnis ich ihn setzten muss das das stimmt
kann man mir da helfen oder ist mir nichtmehr zu helfen ? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Moin,
Also eigentlich sollte es auch ohne Classpath gehen.
Du musst nur in das Verzeichnis wechseln, wo Deine .class-Datei liegt und diese halt mit dem entsprechenden Befehl aufrufen.
Wenn das nicht geht - wovon ich bei Dir gerade mal ausgehe - dann setz doch einfach den Classpath und teste es halt damit.
Kleines Tutorial dazu:
http://w3studi.informatik.uni-stuttgart.de/~bischowg/languages/Java/Allgemeines/JavaInstall.html
Gruß,
Pawnee
Beitrag geändert: 21.7.2008 20:04:14 von pawnee -
naja aber miene frage was ist den der richtige PATH .... das ist ja die eigentliche Frage ;)
also wo liegt unter Ubunut der richtige PATH, also was muss ich zu PATH hinzufügen.
-
Hast du das schon mal probiert ?
bei mir kommmen da so um die (ok ganz genau) 5121 eintäge.
welcher da wohl der richtige ist...
Naja hab die für mich \"logischtsen\" versucht ... erfolglos.
Hier niemand Ubuntu + Java benutzt ? -
Moin,
wenn Du nach javac suchen würdest, hättest Du ganz schnell Deinen passenden Pfad.
In dem Pfad sollte jdk und bin vorhanden sein
Gruß,
Pawnee -
Hallo zusammen,
also eigentlich solltest du den Pfad zu deiner jtest - Datei
dem Classpath hinzufügen, denn die wird ja nicht gefunden. Der Pfad zum
Compiler bzw. zur VM scheint schon in Ordnung zu sein. Falls du nicht weiter kommst
und Pafdangaben ausschließen möchtest, dann leg deine Datei mal ins
Verzeichnis mit den Java Binaries. Nachdem du aber compilieren kannst
scheint mir das Problem wo anders zu liegen.
Du hast schon den richtigen Dateinamen, oder?
Vielleicht blöde Frage, aber oft sind es die einfachsten Sachen, die einen
verzweifeln lassen.
Gruß
Manni -
Hi,
dass scheint mir ja recht vertrakt zu sein ;).
Also, nur damit ich es auch richtig verstehe:
-du hast eine Datei jtest.java
-du stehst in dem Verzeichnis der Datei und compilierst javac jtest.java
-du erhältst im gleichen Verzeichnis eine Datei jtest.class
-du gibst java jtest ein und erhältst den oben angegebenen Fehlerstack?
Gruß
Manni -
Ja da gehst du richtig in der Annahme ...
nochmal kurz:
Java ist installier und ausgewählt von sun (sun-java6-sdk)
Datei name ist jtest.java
Inhalt:
public class jtest { public static void main(String[] args) { System.out.println(\"Hello World!\"); } }
dann compiliert mit:
$ javac jtest.java
(erfolgreich)
und der versuch es zu testen:
$ java jtest.class
oder auch
$ java jtest
mit diversen manipulierten Classpath ausprobiert und direkt bei den binaries ... immer:
Exception in thread \"main\" java.lang.NoClassDefFoundError: hellow/java Caused by: java.lang.ClassNotFoundException: hellow.java at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
-
Hi,
also eine Frage ist noch offen:
Es liegt wirklich die .class Datei in dem Verzeichnis in dem auch die Quelle liegt und in dem du stehst?
Gruß
Manni -
Oh yes.
Habs grad.
Erster fehler ich habs versucht mit
java jtest.class
und dann hab ich micht der CLasspath Variable gespielt und es dort verhunst ...
ansich klapts ohne einstellung oder sinst mit:
java -cp . jtest -
Hallo,
du kannst den Punkt ja in die CLASSPATH Variable eintragen, dann
sparst du dir den Pfad beim Aufruf mitzugeben. Üblicherweise wird
der Punkt da schon bei der Installation von java sdk eingetragen.
Gruß
Manni -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage