我下载了最新版本的Eclipse,但是无法启动。
我收到的错误消息是:
无法加载JNI共享库“ C:\ Program Files(x86)\ Java \ jdk1.6.0_20 \ bin .. \ jre \ bin \ client \ jvm.dll”。
我该如何解决?
我使用64位Windows,32位JDK,并下载了64位Eclipse。
我下载了最新版本的Eclipse,但是无法启动。
我收到的错误消息是:
无法加载JNI共享库“ C:\ Program Files(x86)\ Java \ jdk1.6.0_20 \ bin .. \ jre \ bin \ client \ jvm.dll”。
我该如何解决?
我使用64位Windows,32位JDK,并下载了64位Eclipse。
Answers:
如果在安装的JDK和Eclipse版本之间存在32位和64位不匹配的情况,通常会发生这种情况!
您的Eclipse版本正在尝试访问32位JDK(如C:\ Program Files(x86)所示),但由于Eclipse期望使用64位JDK或由于缺少32位JDK而失败-您需要确保相应地将Eclipse和JDK版本匹配。
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
-vm
C:/Program Files/Java/jdk1.6.0_32/jre/bin
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
同时使用eclipse和os 64位或32位
如果您已经下载了64位Eclipse和64位JDK / JRE,请检查javaw.exe是否可用于64位。
就我而言 C:\Program Files\Java\jre6\bin
我已经将Eclipse解压缩到该c:\eclipse
文件夹中;在该eclipse.ini
文件可用。用以下内容替换该文件的内容:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-framework
plugins\org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xmx700m
-XX:MaxPermSize=690M
在-vm标志和值之间保留新行。它为我工作。
即使我同时拥有JDK和Eclipse的64位版本,我也面临着同样的问题。我发现eclipse.ini中缺少JDK路径。
因此,我在eclipse.ini文件中添加了以下几行:
-vm
C:\Program Files\Java\jdk1.7.0_45\jre\bin <this might be different on your machine>
这样就解决了问题! :-)
如果eclipse是64位,请将路径中的Java更新为C:\ Program Files \ Java \ jre7
要不然
检查eclipse引用的Java位置,然后将内容C:\ Program Files \ Java \ jre7复制到eclipse jre位置。
参考-http: //www.buggybread.com/2013/01/failed-to-load-jni-shared-library.html
1.卸载可用的jdk7.1(它是64位)。2.下载并安装32位的jdk7.1。jvm.dll将位于以下路径中:“ C:\ Program Files(x86)\ Java \ jdk1.7.0_75 \ jre \ bin \ client”
希望它能工作。
为了详细说明Steffen Opel的答案,eclipse.ini文件中指定的JVM与由于Windows路径环境变量中的条目而遇到并启动的JVM之间会发生不匹配。因此,要解决此问题,请确保它们都引用相同的JVM。
要解决此问题,请按照下列步骤操作:
1.修改Eclipse配置,
使其以所需的JVM版本启动打开eclipse.ini,并将下面的行更改为您希望使用的Java版本,例如:
-Dosgi.requiredJavaVersion=1.5
2.确保Eclipse可以访问JVM,它需要
转到控制面板->编辑系统环境变量->路径。
a)确保您的Java此处存在一个条目
b)确保该条目位于@path条目中的所有其他Java路径之上(或更早)。
希望那应该为您解决问题。
尽管这是一个古老的问题,但我想在@Steffen Opel给出的“已接受”答案中添加更多相关信息。
可以在64位Windows OS中安装任意数量的32位JDK和64位JDK版本。也可以在同一台计算机上安装32位Eclipse和64位Eclipse。但是要运行其中一个与平台相关的Eclipse(在OPs中为64位Eclipse)版本,该计算机应为JDK配置匹配的“ 环境变量 ”。可以完成(应该这样做)而无需修改 eclipse.ini文件。
环境变量
要在不提供完整路径的情况下运行Java,需要将java.exe的文件位置添加到PATH
环境变量中。对于其他一些第三方实用程序,JAVA_HOME
也需要环境变量。
通常,Java开发人员总是需要安装JDK(JDK中包含JRE)。并PATH
设置为JDK安装文件夹(在OP中为C:\ Program Files \ Java \ jdk1.6.0_40 \ bin)下的“ bin ”文件夹,而设置为JDK安装文件夹(在OPs中为C:\ Program Files \ Java \ jdk1.6.0_40)。JAVA_HOME
此处OP仅具有32位JDK,但尝试使用64位Eclipse。因此,要解决此问题,OP需要安装64位JDK。并更改JAVA_HOME
&PATH
“ 环境变量 ”以匹配该安装位置。
这是更完整的步骤:
然后打开Windows资源管理器,右键单击“计算机”图标并选择
属性 -> 高级系统设置。
它将打开
系统属性窗口,并在“ 高级 ”选项卡中选择“ 环境变量 ”以打开编辑窗口。
在“ 系统变量”部分下,查找JAVA_HOME
变量名称,然后单击底部的“ 编辑 ”按钮,如果不可用,则单击“ 新建 ”,然后输入C:\ Program Files \ Java \ jdk1.6.0_40
,然后单击“确定”。
然后选择PATH
变量并单击“ 编辑 ”并追加
%JAVA_HOME%\bin
; %JAVA_HOME%\bin
在现有字符串的开头或 结尾。不要覆盖现有字符串,然后单击确定->确定->确定以完成操作。
现在,Eclipse将打开且没有错误。
注意:
如果有人需要使用32位Eclipse,则默认JDK路径将为C:\ Program Files(x86) \ Java \ jdkx.x.x_xx
PATH
在Windows 10中更改环境变量时,将弹出另一个窗口,如下图所示。
我曾经遇到过同样的问题,但是我找到了解决方案。
检查Eclipse是32位还是64位,然后