在64位JVM Inteliij上运行32位.dll时出错

时间:2018-12-13 16:04:20

标签: intellij-idea jvm

当我尝试在项目中执行以下代码行时,出现以下错误。我在项目属性中添加了64位JDK。我正在使用Intellij作为我的IDE

System.loadibrary(smsjavaagentapi)

致命错误:System.loadibrary(smsjavaagentapi)java.lang.unsatisfiedLinkError smsjavaagentapi.dll出现异常:无法在AMD 64位平台上加载IA 32位.dll

我认为问题是我正在使用64位JVM,并且试图运行32位.dll。我没有选择在计算机上安装32位JDK并将其添加到我的项目属性中的选项,也无法将.dll移植到64位。有没有解决的办法?

1 个答案:

答案 0 :(得分:0)

在操作系统级别有一个限制,它阻止64位进程加载32位共享库,因此您的选择是

  • 修改操作系统以允许这样做(不容易)
  • 通过重新编译将DLL迁移到64位。
  • 安装32位JVM(更轻松)
  • 下载32位JVM并解压缩而不安装它。 (不需要任何特殊许可)

您可能会发现可以获得32位JVM附带的IntelliJ版本,或安装另一个程序来安装32位JVM并仅使用JVM。