Что не так с этим файлом .jar? - PullRequest
0 голосов
/ 09 марта 2009

Я пытаюсь превратить свой проект 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

Ответы [ 3 ]

4 голосов
/ 09 марта 2009

Вы можете проверить свой путь к классу. Это должно включать по крайней мере

  • Файл jar с классами, которые вы написали
  • Поддержка jar с такими классами, как javax.media.opengl (jogl.jar?)

Попробуйте поместить все эти банки в путь к классам и запустите его.

0 голосов
/ 06 мая 2013

Переключитесь на Netbeans, чтобы создать свой JAR-файл. Я нахожу использование других библиотек внутри моих проектов, включая файлы dll, лучше всего использовать что-то вроде Netbeans или просто упаковать его с maven.

mvn clean package

Вы должны хорошо разбираться в xml, если вы хотите использовать maven для упаковки всех ваших jar-файлов.

0 голосов
/ 09 марта 2009

это файл Jogle jar в вашем классе?

Я вижу, вы сами включили банки в свою банку ... это, к сожалению, не получится из коробки.

Либо достаньте банки, затем поместите их в путь к классам (который также может быть частью вашего манифеста) или напишите свой собственный загрузчик классов ...

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

Вот почему это сработало для Уильяма, а не для вас ... он взял джогл откуда-то еще и не использовал тот, что в вашей банке.

...