java3d Intellij suddenly throwing ClassNotFoundException

来源:互联网 发布:php富文本编辑器 编辑:程序博客网 时间:2024/04/30 13:54

出现这个问题的原因和解决办法连接

Nov 13, 2012 2:43:53 PM org.jdesktop.application.Task failedSEVERE: My.Application$9@7c4f8358 failed: java.lang.NoClassDefFoundError: javax/media/opengl/GLCapabilitiesChooserjava.lang.NoClassDefFoundError: javax/media/opengl/GLCapabilitiesChooserat jpl.mipl.jade.jadis.agile2d.swing.JOGLPluggableRenderer.notifyBeforeSetRootPane(JOGLPluggableRenderer.java:105)at jpl.mipl.jade.jadis.StereoJFrame.setRootPane(StereoJFrame.java:264)at javax.swing.JFrame.frameInit(JFrame.java:236)at javax.swing.JFrame.<init>(JFrame.java:159)at jpl.mipl.jade.jadis.StereoJFrame.<init>(StereoJFrame.java:172)at StereoWS.DSStereoFrame.<init>(DSStereoFrame.java:70)at StereoWS.StereoWSView$9.doInBackground(StereoWSView.java:1067)at org.jdesktop.swingworker.SwingWorker$1.call(Unknown Source)at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)at java.util.concurrent.FutureTask.run(FutureTask.java:138)at org.jdesktop.swingworker.SwingWorker.run(Unknown Source)at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)at java.lang.Thread.run(Thread.java:680)Caused by: java.lang.ClassNotFoundException: javax.media.opengl.GLCapabilitiesChooserat java.net.URLClassLoader$1.run(URLClassLoader.java:202)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:190)at java.lang.ClassLoader.loadClass(ClassLoader.java:306)at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)at java.lang.ClassLoader.loadClass(ClassLoader.java:247)... 14 more

解决办法:

7down voteacceptedI believe you are using Java3D jars from the old Oracle site in combination with the latest JogAmp JOGLv2, this will not work of two reasons A) the jogl.jar is now renamed jogl-all.jar B) internal namespace changes, all com.sun.* classes is now found under com.jogamp.* and this will confuse the old Java3D code that expects the com.sun.* namespace.Both JOGL and Java3D is now maintained by members of the JogAmp community: Background of the move: http://labb.zafena.se/?p=656 The only supported way to use Java3D today is by using the community maintained Java3D in combination with the latest JogAmp JOGL v2.Tutorial on how to setup the latest community maintained Java3D in combination with JOGLv2. Julien Gouesse: Java 3D est de retour [Java 3D is back] http://gouessej.wordpress.com/2012/08/01/java-3d-est-de-retour-java-3d-is-back/

大致原因是因为使用老版本oracle java3d jar与最新jogAmp,解决办法是更新java3d jar文件
需要的java3d jar 文件和 jogAmp jar文件

原文出处:http://stackoverflow.com/questions/13365593/java3d-classes-not-found

0 0
原创粉丝点击