ما المشكلة في ملف .jar هذا؟
سؤال
أحاول تحويل مشروع JoGL الخاص بي إلى ملف jar
ملف.ما الخطأ الذي افعله؟
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.
محتويات ملف JAR:
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
المحلول
يمكنك التحقق من مسار الفصل الدراسي الخاص بك.وينبغي أن تشمل على الأقل
- ملف الجرة الذي يحتوي على الفصول التي كتبتها
- دعم الجرار بفئات مثل javax.media.opengl (jogl.jar؟)
حاول وضع كل هذه الجرار في مسار الفصل الدراسي الخاص بك وتشغيله.
نصائح أخرى
هو ملف جرة Jogle في CLASSPATH الخاص بك؟
وأراك وقد شملت الجرار أنفسهم في جرة الخاص بك ... وهذا للأسف لا فيل العمل من خارج منطقة الجزاء.
وإما الحصول على الجرار من ثم وضع في CLASSPATH الخاص بك (التي يمكن أن تكون جزءا من البيان الخاص بك أيضا) أو إرسال classloader الخاصة بك ...
http://java.sun.com/docs /books/tutorial/deployment/jar/downman.html
وهذا هو السبب في أنها عملت وليام ويست لك ... حصل على jogl من مكان آخر ولم تستخدم واحدة داخل جرة الخاص بك.
التبديل إلى نتبيانس لبناء ملف جرة الخاص بك. أجد باستخدام مكتبات أخرى داخل بلدي المشاريع بما في ذلك ملفات DLL قصارى جهدها لاستخدام شيء مثل نتبيانس أو حزم فقط مع مخضرم.
mvn clean package
وتحتاج إلى أن يكون ضليعا في أكس رغم ذلك إذا كنت ترغب في استخدام مخضرم لحزم كافة الملفات جرة الخاص بك.