我刚刚开始使用swt(windows x86_x64兼容版本)。 当我在Eclipse中运行示例代码片段时,我收到以下错误...
Exception in thread "main" java.lang.UnsatisfiedLinkError: Cannot load 64-bit SWT libraries on 32-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)
at Snippets.main
我的计算机上安装了Windows Vista。我相信这个swt版本应该支持32位和64位Os。为了让32位工作,我错过了什么?
如果我的JVM版本错误,我该如何更改?
答案 0 :(得分:5)
请在以下位置找到32位库...
使用zip中的swt.jar。
答案 1 :(得分:4)
这里给出了在Eclipse上32位安装SWT的解决方案 http://www.badprog.com/eclipse-standard-widget-toolkit-swt-installation
答案 2 :(得分:1)
x86_64版本肯定不适用于32位进程。您需要获得32位版本的SWT。
答案 3 :(得分:0)
如果您尝试针对32位JRE运行64位库,则会发生这种情况。 32位可以在64位运行,但反之亦然。
如果您安装了64位JVM,则可以在菜单Run&gt;中修改设置。运行配置,然后选择正确的JRE。
否则只需获得SWT的32位版本。
答案 4 :(得分:0)
一个特例是,如果您在尝试打开Android sdk管理器时才看到它,这表明sdk工具无法正确找到您的java.exe。转到你的sdk文件夹,打开 tools / android.bat 文件,找到行说出&#34;设置java_exe&#34;,将其改为&#34;设置java_exe = ABSOLUTE_PATH_TO_YOUR_JAVA_EXE&#34;并注释掉以下两行;
答案 5 :(得分:-1)
我的日食没有开始。我检查了workspace / .metadata / .log中的日志。 java.lang.UnsatisfiedLinkError:无法在32位JVM上加载64位SWT库 异常存在。这是因为我的机器,eclipse,java配置是这样的 机器:Windows:64位 Eclipse:64位 Java:32位
我更正了 JAVA_HOME &amp;的路径即可。似乎没有工作。
解决方案:我在eclipse.ini
文件中添加了-vm和正确的jvm路径。它对我有用。我能够开始日食。
示例:我指向64位jvm启动64位eclipse
-vm C:\Program Files\Java\jdk1.7.0_75\bin\javaw.exe