Hallo,
ich fange gerade an mich in Java und Eclipse einzuarbeiten und habe von einem 3D Tutorial einen Code in Eclipse kopiert. (Diesen hier: Simple 3D Demo : 3D Basics3DJava )
Allerdings bekomme ich bei jeder "import javax.media.j3d...;" und "import com.sun.j3d...;"
Zeile den Fehler "The import javax.media cannot be resolved."
Kann mir jemand erklären woher ich diese Bibliotheken bekomme, bzw.wie ich diese einbinde?
Installiert habe ich: Java3D, jdk1.7.0, jre7 und Eclipse.
Vielen Dank
Vielen Dank, die Fehlermeldungen sind jetzt weg. Leider kann ich noch immer nicht fehlerfrei kompilieren. In der Konsole erhalte ich folgende Meldungen:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:189)
at java.security.AccessController.doPrivileged(Native Method)
at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:180)
at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:137)
at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:948)
at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:280)
at javax.media.j3d.Canvas3D.<clinit>(Canvas3D.java:3862)
at training.HelloWorld.main(Würfel1.java:24)
Könnt ihr mir hier auch weiterhelfen?
@Camill: Du hast natürlich Recht. Habe allerdings ein Projekt, für das mir nur begrenzte Zeit zur Verfügung steht. Daher kann ich mich nicht ausschließlich mit Grundlagen beschäftigen.
Hmja, schon bei den JARs war ich mir nicht sicher, ob das nötig sein sollte, aber spätestens jetzt muss man sagen, dass da anscheinend mit der Installation von Java3D was schiefgegangen ist. Vielleicht nochmal (ggf. als Administrator) De- und dann Neuinstallieren. Ansonsten könnte man zusehen, dass man den PATH in den Umgebungsvariablen manuell so anpasst, dass er den Pfad zur "j3dcore-ogl.dll" enthält, die auch irgendwo im Java3D-Ordner rumliegen sollte. Irgendwie kriegt man's schon zum Laufen.
Die Neuinstallation von Java3d hat leider nicht das gewünschte Ergebnis gebracht. (In Win7 mit Admin rechten deinstalliert, neugestartet und nocheinmal neu installiert).
Hm... "irgendeine" Varaible wird's nicht tun Bei den unteren gibt es schon eine, die "PATH" heißt. Zu deren Wert kannst du am Ende den Pfad hinzufügen, durch Semikolon abgetrennt: C:\das\war\schon\vorhanden\;C:\Program Files\Java\Java3D\1.5.1\bin
(falls in dem bin-Verzeichnis die gesuchte DLL liegt - müßt' ich jetzt nachsehen).
Nochmal: Eigentlich sollte das nach einer richtigen Installation nicht nötig sein, aber vielleicht hakt die Installation auf Windows 7 (hatte es bisher immer nur auf XP ... obwohl es dann tendenziell (abgesehen von Admin-Rechte-Kram) ja auch auf 7 gehen sollte...)
Vielen Dank Marco, hat jetzt funktioniert.
Leider hab ich jetzt wieder neue Fehlermeldungen:
Exception in thread "main" java.lang.NullPointerException: Canvas3D: null GraphicsConfiguration
at javax.media.j3d.Canvas3D.checkForValidGraphicsConfig(Canvas3D.java:963)
at javax.media.j3d.Canvas3D.<init>(Canvas3D.java:1006)
at training.HelloWorld.main(Würfel1.java:24)
In der tat verwenden noch hunderte von "alten" Beispielen das 'null' als Argument. Wieder ein Zeichen dafür, wie schwer es ist, eine API zu ändern - wobei man sich schon fragen könnte, warum im Konstruktor nicht sowas steht wie [c]if (c == null) c = dasPreferredDing();[/c] :bahnhof: