我想把我的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.

内容的罐子文件:

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
有帮助吗?

解决方案

你可以检查你的类路径。它应该包括至少

  • 罐子文件与上课,你有写
  • 支持罐子的类似内媒体。照片(jogl.jar?)

试图把所有这些罐子在您的类路径和运行。

其他提示

是你的类路径中的Jogle jar文件吗?

我看到你已经将罐子自己包含在你的罐子里......不幸的是,这不会开箱即用。

要么把罐子拿出来然后放在你的类路径中(也可以是你的清单的一部分)或者写你自己的类加载器......

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

这就是为什么它适用于威廉而不适合你...他从其他地方得到了一个慢跑,并没有在你的罐子里使用它。

切换到Netbeans以构建您的jar文件。我发现在我的项目中使用其他库包括dll文件最好使用像Netbeans这样的东西,或者只是用maven包装它。

mvn clean package

如果你想使用maven来打包你的所有jar文件,你需要精通xml。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top