“线程中的异常”;“主要”;Java3D中的java.lang.NoClassDefFoundError

“线程中的异常”;“主要”;Java3D中的java.lang.NoClassDefFoundError,java,eclipse,noclassdeffounderror,java-3d,Java,Eclipse,Noclassdeffounderror,Java 3d,我正在尝试开发一个java3d应用程序,我尝试了一切,我只是下载了jogamp平台,因为我可以在很多网站上看到java3d已经过时了,对于mac os x,你需要它,我将它们都放在/System/Frameworks/Java/Extensions中,其中是我的.jar文件,以便不添加到Eclipse中的类路径中,但它仍然得到相同的错误: Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/opengl/A

我正在尝试开发一个java3d应用程序,我尝试了一切,我只是下载了jogamp平台,因为我可以在很多网站上看到java3d已经过时了,对于mac os x,你需要它,我将它们都放在/System/Frameworks/Java/Extensions中,其中是我的.jar文件,以便不添加到Eclipse中的类路径中,但它仍然得到相同的错误:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/opengl/AbstractGraphicsDevice
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:171)
    at javax.media.j3d.Pipeline$1.run(Pipeline.java:143)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.media.j3d.Pipeline.createPipeline(Pipeline.java:138)
    at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:926)
    at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:280)
    at javax.media.j3d.Canvas3D.<clinit>(Canvas3D.java:3862)
    at Apartado_a.<init>(Apartado_a.java:17)
    at Apartado_a.main(Apartado_a.java:67)
Caused by: java.lang.ClassNotFoundException: javax.media.opengl.AbstractGraphicsDevice
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 10 more

问候

Mac OS X预装了Java 3D 1.3版。您可以在/System/Library/Java/Extensions中找到这些文件。如果您需要安装Java 3D 1.5版(听起来像是这样),那么您可以使用此安装程序:

不要为此使用/System/Frameworks/Java/Extensions文件夹


而是将相关库包含在应用程序的lib/文件夹中。另外,请检查您正在使用的JDK版本。我相信,与旧的Oracle/Sun提供的JVM相比,新的Apple提供的JVM上运行的Java3D存在一些问题。

为什么不将它们添加到类路径中呢?好吧,当我在构建路径中添加JRE时,我的项目中包含的所有jar文件都没有必要再次添加到类路径中,最后我修复了它,只是新JDK版本的一个问题,1.7不适用于Java3D,至少在Mountain Lion中是这样,只是设置为1.6或小版本对我来说很好:)好吧,没有什么变化,现在又出现了一个noclassdeffounderror。。。这简直让我发疯了。。。线程“J3D-Renderer-1”java.lang.NoClassDefFoundError中出现异常:com.sun.opengl.impl.JAWT_DrawingSurface.GetDrawingSurfaceInfo0上的apple/awt/ComponentModel(本机方法)…我的项目中没有lib文件夹,你是说Eclipse文件夹吗?无论你使用什么作为本地类路径,请确保库都在那里。这通常只是一个lib/文件夹,但它可以是任何东西。我使用JRE系统库作为一个类路径,其中有库,总是会出现相同的错误,即使添加另一个具有相同jar文件的文件夹也会出现相同的错误,我相信我缺少一些库,但我不知道是哪个库。
 j3daudio.jar
 j3dcore.jar
 j3dutils.jar
 joal-natives-macosx-universal.jar
 jogl-all.jar
 gluegen-rt.jar
 gluegen-rt-natives-macosx-universal.jar