IntelliJ - 无法在64位JVM上加载32位SWT库

时间:2016-07-13 07:32:47

标签: java intellij-idea 64-bit windows-7-x64

每当尝试运行Java应用程序时。我遇到了这个堆栈跟踪错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Cannot load 32-bit SWT libraries on 64-bit JVM
    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.C.<clinit>(Unknown Source)
    at org.eclipse.swt.widgets.Display.<clinit>(Unknown Source)

有任何想法如何解决此问题?

当前环境配置

  • IntelliJ Ultimate Edition 2016.1.3
  • JDK 7(64位)
  • Windows 7(64位)

1 个答案:

答案 0 :(得分:1)

您需要使用64位SWT库将其加载到64位进程中。

64位进程(JVM与否)无法在Windows,UNIX或MacOSX中加载32位共享库。这是操作系统的限制,而不是JVM。基本上,您不能将64位地址传递给32位库,因此它们无法相互交互。