Windows 8.1运行Eclipse JEE 2024-09时SWT库加载失败求助
解决Eclipse 2024-09在Windows 8.1上加载SWT库失败的问题
我在Windows 8.1笔记本上下载了eclipse-jee-2024-09-R-win32-x86_64.zip,解压后运行eclipse.exe。系统已安装Java 23.0.1,但启动时出现以下错误:
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: C:\eclipse\configuration\org.eclipse.osgi\800\0\.cp\swt-win32-4966r5.dll: Impossibile trovare la procedura specificata no swt-win32 in java.library.path: C:\eclipse;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/eclipse//plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin/server;C:/eclipse//plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin;C:\Program Files\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Windows Live\Shared;C:\Users\Franco\AppData\Local\Programs\Microsoft VS Code\bin;C:\eclipse;;. no swt in java.library.path: C:\eclipse;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/eclipse//plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin/server;C:/eclipse//plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin;C:\Program Files\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Windows Live\Shared;C:\Users\Franco\AppData\Local\Programs\Microsoft VS Code\bin;C:\eclipse;;. C:\Users\Franco\.swt\lib\win32\x86_64\swt-win32-4966r5.dll: Impossibile trovare la procedura specificata Can't load library: C:\Users\Franco\.swt\lib\win32\x86_64\swt-win32.dll Can't load library: C:\Users\Franco\.swt\lib\win32\x86_64\swt.dll C:\Users\Franco\.swt\lib\win32\x86_64\swt-win32-4966r5.dll: Impossibile trovare la procedura specificata
已知所有上述文件均存在于指定目录中,可尝试以下解决方案:
- 安装Windows 8.1系统更新:SWT库依赖系统底层API,旧版本Windows 8.1可能缺少必要的系统组件。安装所有可用的Windows更新,尤其是与C++运行时、系统核心库相关的补丁。
- 强制Eclipse使用自带JRE:Eclipse 2024-09自带JRE 21.0.4,系统中的Java 23可能存在兼容性问题。打开
eclipse.ini文件,在开头添加以下参数(路径需与你的Eclipse目录匹配):
注意路径分隔符用-vm C:/eclipse/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin/javaw.exe/或转义的\\,保存后重启Eclipse。 - 替换SWT库文件:下载适配Windows 8.1的同版本SWT组件包,将其中的
swt-win32-4966r5.dll替换到以下两个位置:C:\eclipse\configuration\org.eclipse.osgi\800\0\.cp\swt-win32-4966r5.dllC:\Users\Franco\.swt\lib\win32\x86_64\swt-win32-4966r5.dll
替换前备份原文件,避免出错。
- 清理Eclipse配置缓存:删除
C:\eclipse\configuration目录下除config.ini外的所有文件和文件夹,重新启动Eclipse让它生成新的配置。 - 以管理员身份运行:右键点击
eclipse.exe,选择「以管理员身份运行」,避免权限不足导致库文件加载失败。
内容的提问来源于stack exchange,提问作者stefano errani
相关产品推荐
相关产品推荐

