我在配置 java3D 以使用我的 IDE 环境时遇到了一些麻烦......
我已经下载了 j3d-1_5_2-linux-i586.zip,并解压了 j3dcore.jar、j3dutils.jar、vecmath.jar、libj3dcore-ogl.so、libj3dcore-ogl-cg.so,并将它们全部添加为“引用库”我的项目文件夹。这消除了我收到的任何编译警告,但是当我编译并运行应用程序时,出现以下异常!
Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:231)
at java.security.AccessController.doPrivileged(Native Method)
at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:200)
at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:157)
at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:987)
at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:299)
at Hello3d.<init>(Hello3d.java:10)
at Hello3d.main(Hello3d.java:18)
这里也是对源代码的快速浏览。注意:一旦将导入库路径添加为引用库,Eclipse 就会使用 Ctrl+Shift+O 自动拉入这些路径。
import javax.media.j3d.BranchGroup;
import com.sun.j3d.utils.geometry.ColorCube;
import com.sun.j3d.utils.universe.SimpleUniverse;
public class Hello3d {
public Hello3d(){
SimpleUniverse universe = new SimpleUniverse();
BranchGroup group = new BranchGroup();
group.addChild(new ColorCube(0.3));
universe.getViewingPlatform().setNominalViewingTransform();
universe.addBranchGraph(group);
}
public static void main(String[] args){
new Hello3d();
}
}
我不确定我对“j3dcore-ogl”的含义是什么,但我一直停留在这一点上。如何在系统环境或 IDE 项目中安装 java3D?请帮忙。
IDE:Eclipse SDK 3.5.2
JVM:java-6-sun-1.6.0.22
操作系统:Ubuntu 10.04 LTS