3

我正在尝试在我的项目中使用 Java3D。这是我收到的错误:

29-Dec-2010 1:01:29 AM javax.media.j3d.NativePipeline getSupportedOglVendor
SEVERE: java.lang.UnsatisfiedLinkError: no j3dcore-ogl-chk in java.library.path
Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-d3d in java.library.path
 at java.lang.ClassLoader.loadLibrary(Unknown Source)
 at java.lang.Runtime.loadLibrary0(Unknown Source)
 at java.lang.System.loadLibrary(Unknown Source)
 at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:189)
 at java.security.AccessController.doPrivileged(Native Method)
 at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:180)
 at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:137)
 at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:948)
 at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:280)
 at World.<init>(World.java:10)
 at Start.main(Start.java:12)

我已将 .jar 文件复制到项目的 lib 文件夹中,并将它们链接到项目 -> 属性 -> 添加 Jar 文件中。Java3D 下载中还有一个 .dll 文件,我没有以任何方式触及或包含该文件。我错过了什么?

4

4 回答 4

2

在 Windows 上,您必须将包含 DLL 的目录(例如 ...\j3d-1_5_2-windows-i586\bin)添加到PATH环境变量中。“解压缩说明”错误地指出应该添加不存在的“...\lib\i386”(版本 1.5.2)。

无法在 Linux 上对其进行测试,但可能您必须将包含 SO 文件的目录添加到LD_LIBRARY_PATH环境变量中。

更多详细信息请参见 j3d-1_5_2-windows-i586.zip 或 j3d-1_5_2-linux-i586.zip 中的 README-unzip.html 文件(其他系统相同)。

于 2010-12-29T09:51:21.410 回答
1

安装 java3d 时,在创建的文件夹中,有 bin 和 ext 文件夹,执行以下操作:

从以下位置复制 .dll 文件:

.../程序文件/Java/Java3D/1.5.1/bin

.../程序文件/Java/jre7/bin

从以下位置复制所有 .jar 文件:

.../程序文件/Java/Java3D/1.5.1/lib/ext

.../程序文件/Java/jre7/lib/ext

于 2014-06-27T14:45:00.553 回答
1

对我来说,答案是“项目/属性/java 构建路径/源选项卡/扩展并选择本机库位置/导航到 i386 文件夹。” 作者:telman shahbazov(java3D lib 配置问题)。以为我会把这个放在这里,以供其他任何在谷歌上搜索这个问题的人使用。

于 2012-08-01T13:38:28.760 回答
0

在系统的类路径中包含 .dll 文件,然后重新启动 eclipse。

于 2010-12-29T09:10:22.357 回答