当我尝试打开Eclipse时,弹出对话框显示:

加载JNI共享库“C:/JDK/bin/client/jvm.dll”失败。

在此之后,Eclipse部队关闭。

以下是我想说的几点:

我查了下那条路径上有没有东西。它确实存在。 我的Eclipse和Java SE Development Kit都是64位的。我检查了我的系统,它可以处理64位。 我在谷歌和Stack Overflow上搜索过这个问题,我找到的唯一答案是下载32位版本的JDK和Eclipse。

下载32位版本是我想做的最后一件事。 如何解决这个问题?


当前回答

当然,你需要有一个兼容的JDK和Eclipse版本,但你还需要在Eclipse .ini文件中添加以下代码:

-vm
yourdrive\java\bin

将它们作为eclipse.ini文件的前两行。

其他回答

这个错误意味着Eclipse的体系结构与Java运行时的体系结构不匹配,即如果一个是32位的,另一个必须是相同的,而不是64位的。

最可靠的修复方法是在eclipse.ini中指定JVM位置:

-vm
C:\Program Files (x86)\Java\jdk1.7.0_55\bin\javaw.exe

重要:这两行必须在-vmargs之前。不要使用引号;允许使用空格。

您可以解决这个问题,因为许多其他复制。您需要Eclipse和JDK都是32位的,或者都是64位的。操作系统的架构并不重要,而其他的仍然是相同类型的架构。

另一种选择是:

创建Eclipse.exe的快捷方式。打开快捷方式,将目标更改为:

"C:\Program Files\eclipse\eclipse.exe" -vm "c:\Program Files\Java\jdk1.7.0_04\bin\javaw.exe"

对于您的安装,请确保位置指向正确的Eclipse安装目录和正确的javaw.exe安装目录。

(当然,Eclipse和Java的64/32位版本必须相同。)

我想为这个错误提供另一种解决方案,特别是针对那些希望在一个系统中同时使用32位和64位Eclipse的人。

如果JRE子目录存在,Eclipse将使用JRE/JDK启动。(STS或其他基于eclipse的IDE也支持此功能…)

解决方案是使用mklink.exe命令创建目录连接,该命令存在于windows vista或更新版本中(junction.exe为windows 2000/XP提供类似的功能) 打开命令行窗口,执行如下命令:

mklink /j "$ECLIPSE-HOME/jre" "$JDK_or_JRE_home"

当然,如果Eclipse用于64位Windows, JDK/JRE的体系结构必须相同。

假设:

Eclipse for windows x86_64安装在d:\devTool\ Eclipse中 JDK for windows x64安装在C:\Program Files\Java\jdk1.8.0

创建jre文件夹的命令如下:

mklink /j "d:\devTool\eclipse\jre" "C:\Program Files\Java\jdk1.8.0"

顺便说一句,删除目录连接不会删除任何文件。如果您创建了一个错误的链接,您可以使用文件资源管理器或rmdir命令删除它。

删除文件夹“d: \ devTool \ eclipse \ jre”

解决这个问题的一个简单方法是将jre文件夹从已安装的JDK复制到Eclipse安装文件夹中。确保您复制的JDK与Eclipse安装的体系结构相同。

我必须这样配置我的机器,因为我在我的机器上同时运行Eclipse和Appcelerator Titanium Studio。Studio需要32位Java,而Eclipse需要64位Java。