无法在IA 32位平台上加载AMD 64位.dll

问题描述:

我下载了用于线性编程的Gurobi程序包。我导入相应的gurobi.jar包。然后运行示例程序。然后,它会出现以下错误:无法在IA 32位平台上加载AMD 64位.dll

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\gurobi460\win64\win64\bin\GurobiJni46.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform

于是我下载了窗口64位JRE,并使用“窗口 - >首选项 - >安装的JRE”来安装这个新的JRE。

但是,它仍然出现这个错误。

+0

您正在使用什么样的Windows版本? – 2012-04-15 23:45:09

如果在安装64位JRE之后仍然出现该错误,则意味着运行Gurobi包的JVM仍然使用的32位JRE来运行

检查您是否全局更新了PATH和JAVA_HOME,并在您正在使用的命令shell中进行了更新。 (也许你只需要退出并重新启动它。)

通过运行“java -version”并检查它是否是64位JRE,检查命令shell是否运行了正确的Java版本。

如果要通过包装脚本/批处理文件启动该示例,请确保该脚本使用的是正确的JRE。根据需要修改...

+1

如果我使用eclipse来运行我的程序,是否还需要设置PATH和类路径? JAVA_HOME用于JDK。现在我在eclipse中为编译器选择JDK 1.6。我如何设置它?我只是安装了64位的JRE窗口。 – Guihua 2012-04-16 01:14:48

+1

我明白了。我还需要在日食中设置“运行配置”的JRE。 – Guihua 2012-04-16 01:41:42

+1

是的。 (你没有提到你在问题中使用Eclipse。) – 2012-04-16 07:51:39

卸载(删除):jre,jdk,eclipse。 下载此程序的32位(x86)版本:jre,jdk,eclipse。 并安装它。

试试这个:

  1. 下载并安装32位JDK。
  2. 转到Eclipse在Java应用程序分支下点击您的项目(Run As→Run Configurations ...)。
  3. 转到JRE选项卡并选择Alternate JRE。点击已安装的JRE按钮,添加你的32位JRE并选择。