2009-03-09 5 views
0

Ich versuche mein JoGL-Projekt in ein Glas zu verwandeln. Kann mir jemand sagen, was ich falsch mache? http://www.megaupload.com/?d=MA3LF50JWas ist mit dieser Jar-Datei falsch?

EDIT aus schnaader: Stacktrace von meinem PC:

EDIT VON WILLIAM: Es läuft auf meinem PC nur gut wie ein normales Projekt innerhalb JCreator, so dass ich weiß, es ist nicht der Code. Ich habe auch JoGL im Ordner/lib/ext/von meinem jre.

 
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/opengl/GL 
EventListener 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClass(Unknown Source) 
     at java.security.SecureClassLoader.defineClass(Unknown Source) 
     at java.net.URLClassLoader.defineClass(Unknown Source) 
     at java.net.URLClassLoader.access$000(Unknown Source) 
     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) 
Caused by: java.lang.ClassNotFoundException: javax.media.opengl.GLEventListener 
     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) 
     ... 12 more 
Could not find the main class: chartest. Program will exit. 

EDIT2 von schnaader: Inhalt der JAR-Datei:

META-INF\MANIFEST.MF 
gluegen-rt.jar 
jogl.jar 
chartest$1.class 
chartest.class 
gluegen-rt.dll 
jogl.dll 
jogl_awt.dll 
jogl_cg.dll 
test.png 
+0

Haben Sie ein vid, screenshot oder stacktrace für diejenigen, die keine Lust haben, Ihre .jar-Datei herunterzuladen (wie ich?) – OscarRyz

+0

Ein Stacktrace hinzugefügt. Der Quellcode ist nicht enthalten, daher ist das Debuggen hier nicht möglich. – schnaader

+0

fügen Sie bitte einen Screenshot hinzu, wie Ihr Glas aussieht, wenn es mit einem Zip-Programm (zB 7-zip) visualisiert wird – flybywire

Antwort

4

Sie können Ihre Classpath überprüfen. Es sollte atleast

  • die JAR-Datei mit Klassen schließen Sie
  • Unterstützung Gläser mit Klassen wie javax.media.opengl (jogl.jar?) Geschrieben haben

versuchen, alle diese Gläser in Vergebens Ihres Klassenpfad und führen Sie es aus.

0

ist Jogle JAR-Datei in Ihrem Klassenpfad?

Ich sehe, Sie haben die Gläser selbst in Ihrem Glas enthalten ... dies funktioniert leider nicht aus der Box.

Entweder die Gläser raus dann in Ihrem Classpath platzieren (das Teil Ihrer Manifest auch sein kann) oder eine eigene Klassenlader schreiben ...

http://java.sun.com/docs/books/tutorial/deployment/jar/downman.html

Aus diesem Grund ist es für William arbeitete und nicht für dich ... er hat den Jogl von woanders genommen und nicht den in deinem Glas benutzt.

0

Wechseln Sie zu Netbeans, um Ihre JAR-Datei zu erstellen. Ich finde die Verwendung anderer Bibliotheken innerhalb meiner Projekte einschließlich DLL-Dateien am besten, um etwas wie Netbeans zu verwenden oder einfach mit Maven zu verpacken.

mvn clean package 

Sie müssen in xml obwohl versiert sein, wenn Sie Maven verwenden möchten, um all Ihre JAR-Dateien zu verpacken.