我在配置 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
最佳答案
我知道这个问题现在已经有几年了,但是这里的答案还不足以让我解决这个问题。他们只提供了部分帮助。 http://www.filsa.net/2008/07/17/eclipse-java3d-and-javalibrarypath/也有点帮助,但仍然不够。因此我觉得有必要写一个完整的 list 来让 Java3D 在 Eclipse 中工作。
几个月前,我已经遇到了同样的问题,我以某种方式解决了它,但并没有真正理解我做了什么。今天我想在另一台计算机上设置我的环境,猜猜怎么着,我又遇到了同样的问题。我忘记了我必须做什么......然而这一次,我更系统地解决了问题,现在我明白了每一步。
解决方案——每一步的细节
1) 如果您要导入其他人的项目,请确保在 Eclipse 中安装并选择了正确的 JDK 和 JRE。我的 Eclipse 选择了最新的 JRE 7。我安装的唯一一个。但是我从事的项目需要 JDK 6 和 JRE 6。如果您需要多个 Java 版本,我建议您的文件系统采用以下结构
2) 在 eclipse ,您必须对 执行以下步骤选择正确的 JDK 和 JRE .
3) 正确设置 Java 环境后,请确保 Java3D 安装在您的机器上。你不能做错任何事。
4) 在 Java3D 安装目录中,找到文件
如果您正确设置了环境,这些文件位于何处并不重要,我将对此进行解释。因此,如果您愿意,您可以将这些文件复制到您的项目目录中,以便将您需要的所有内容集中在一处。
5) 找到这些文件后,请确保
在 Windows 下,要设置 PATH 变量,请在控制面板中打开系统设置并选择高级系统设置。在底部,您会找到“环境变量”按钮。在系统变量列表中,您将找到变量“路径”。确保路径列表中包含 j3dcore-ogl 的目录。
6) 现在是今天拯救我一天的部分。
对于 Java 构建路径中列出的每个 Java3D 库
您需要指定 本 map 书馆位置 . native 库是 j3dcore-ogl.dll ,因此编辑 native 库位置以指向包含 j3dcore-ogl.dll 的目录。
我相信,这些都是在 eclipse 中设置 Java3D 必须完成的所有步骤,因为我今天在一台新计算机上设置了所有内容。现在我希望这些说明能拯救其他一些可怜的 Java 初学者、学生或程序员的一天:-)
关于java - java3D lib 配置的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4098161/