0

我实际上已经搜索过,但在任何网站上都没有找到解决方案。我正在尝试在 MacOS 中使用 Java3D 编写 Java 程序,并且我正在尝试在 Eclipse 中使用 Java3D。我正在尝试运行一个简单的 HelloUniverse 代码,但出现以下异常:

线程“AWT-EventQueue-0”java.lang.UnsatisfiedLinkError 中的异常:java.library.path 中没有 J3D
    在 java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
    在 java.lang.Runtime.loadLibrary0(Runtime.java:845)
    在 java.lang.System.loadLibrary(System.java:1084)
    在 javax.media.j3d.MasterControl$22.run(MasterControl.java:891)
    在 java.security.AccessController.doPrivileged(本机方法)
    在 javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:888)
    在 javax.media.j3d.VirtualUniverse.(VirtualUniverse.java:233)
    在 HelloUniverse.createUniverse(HelloUniverse.java:100)
    在 HelloUniverse.(HelloUniverse.java:126)
    在 HelloUniverse$1.run(HelloUniverse.java:161)
    在 java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    在 java.awt.EventQueue.dispatchEventImpl(EventQueue.java:701)
    在 java.awt.EventQueue.access$000(EventQueue.java:102)
    在 java.awt.EventQueue$3.run(EventQueue.java:662)
    在 java.awt.EventQueue$3.run(EventQueue.java:660)
    在 java.security.AccessController.doPrivileged(本机方法)
    在 java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    在 java.awt.EventQueue.dispatchEvent(EventQueue.java:671)
    在 java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
    在 java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
    在 java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    在 java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
    在 java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
    在 java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

我已经将 j3dcore.jar vecmath.jar 和 j3dutils.jar 以及一堆其他库添加到我的构建路径中,但它似乎不起作用。

任何人都可以帮助我在 Mac 的 eclipse 中使用 Java3D 吗?

谢谢

4

1 回答 1

0

java.lang.UnsatisfiedLinkError表示您缺少必需的本机库。Java3D 由 JAR 和本地库组成。在您的 Java 构建路径中,找到您的 Java3D JAR,单击箭头图标以打开每个 JAR 的选项,然后选择“Native Library Location”并编辑。将它指向 jnilib 文件所在的位置(可能是 /System/Library/Java/Extensions/)。

于 2013-03-05T18:07:01.527 回答