Java 无法修复此错误:“未满足链接错误:../j3dcore-ogl.dll:无法在AMD 64位平台上加载IA 32位.dll”

Java 无法修复此错误:“未满足链接错误:../j3dcore-ogl.dll:无法在AMD 64位平台上加载IA 32位.dll”,java,java-3d,Java,Java 3d,我只想在Apache Netbeans IDE 11.1中学习Java3D,但当我实现Java3D库时,编写了一个简单的Getting startet项目,并希望它运行,我得到了错误: Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Windows\j3dcore-ogl.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform 我完全不知道如何解决这个问题 我已

我只想在Apache Netbeans IDE 11.1中学习Java3D,但当我实现Java3D库时,编写了一个简单的Getting startet项目,并希望它运行,我得到了错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: 
C:\Windows\j3dcore-ogl.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
我完全不知道如何解决这个问题

我已经用谷歌搜索了我的问题,但没有可以理解的解决方案。 我的第一个想法是重新安装Netbeans和所有Java JDK。但即使在这之后,程序仍然抛出了令人不满意的链接错误

包javaapplication1; 导入com.sun.j3d.utils.universe.SimpleUniverse; 导入com.sun.j3d.utils.geometry.ColorCube; 导入javax.media.j3d.BranchGroup; 公共类JavaApplication1{ 公共JavaApplication1{ 简单宇宙=新的简单宇宙; BranchGroup组=新BranchGroup; group.addChildnew ColorCube0.3; universe.getViewingPlatform.setNominalViewingTransform; universe.addBranchGraphgroup; } 公共静态无效字符串[]args{ System.setPropertysun.awt.noerasebackground,true; 新JavaApplication1; } }
您使用的是过时的Java 3D版本。Java 3D>=1.6不再使用j3dcore ogl,本机库由本机OpenGL管道使用,而Java 3D仅使用JOGL API。我建议你读书。Jesper的建议没有错,通过使用64位JRE的64位本机库并将其放入Java库路径,您将有机会使一个非常过时的Java 3D版本工作,但更合理、更简单的解决方案是使用更新的版本。我解释了如何安装它,只需按照链接


请注意,我是,我写了大多数wiki页面和官方Java 3D用户指南。

您能安装64位版本的j3dcore ogl吗?将DLL文件复制到System32和sysWOW64目录。错误意味着您使用的是64位Java虚拟机,但您使用的是32位本机库。那不行;您需要找到本机库的64位版本,或者使用32位Java VM。JVM和本机库的比特数必须相同。@joop eggen在使用本机库运行Java程序时,这不是一种方法,如果您真的想使用这个过时的Java 3D.Found版本,请使用Java库路径@但事实上你是对的。回答得很好。嘿,谢谢你的快速回复,但我觉得我太笨了,不懂你的指示。我已经下载了zip文件并将其解包,我知道我需要什么jar文件,但是现在您编写了,您可以从每个jar文件夹中复制所需的jar,如果您从每个lib文件夹中使用它们,则可以从本地库文件中复制所需的jar。我完全不知道把它们贴在哪里。。我很抱歉,但我是一个真正的新手,我需要一个更详细的指导;你读过这个吗?您只需将4个JAR放入项目的设置中,以便IDE找到它们并将它们包含到类路径中。