无法加载JNI共享库"C:\Program Files\Java\jre7\bin\client\jvm.dll"

5

我已经找了很多解决方案,但是所有我找到的都没有起作用。

  • 我已经三次检查了我是否安装了64位的JRE/JDK和Eclipse。
  • 我已经在eclipse.ini文件中添加了'-vm'参数。

以下是文件内容:

 -startup plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
 --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
 -product org.eclipse.epp.package.standard.product
 --launcher.defaultAction openFile
 --launcher.XXMaxPermSize 256M
 -showsplash org.eclipse.platform
 --launcher.XXMaxPermSize 256m
 --launcher.defaultAction openFile
 --launcher.appendVmargs
 -vm C:\Program Files\Java\jdk1.7.0_45\bin\javaw.exe
 -vmargs
 -Dosgi.requiredJavaVersion=1.6
 -Xms40m
 -Xmx512m

编辑:现在它可以工作了,vm参数指向错误的文件!


你的 JAVA_HOME 设置是什么?尝试使用 set JAVA_HOME="C:\Program Files\Java\jdk1.7.0_45" - Elliott Frisch
-vm参数(以及其他 -xxx 选项)的参数应该在另一行上,并跟随在参数后面,而不是在同一行上。 - greg-449
3个回答

10

如果你已经将你的jdk升级到7,你很可能会遇到这个问题。

主要原因是:

  1. sdk和jdk版本不兼容
  2. 在64位eclipse JVM(programfilex86-java)中使用32位java版本

你需要做的:

首先检查 "eclipse.ini" 文件是否有指向JDK的路径。

它应该类似于:

-vm    
C:\Program Files\Java\blah\blah\blah\javaw.exe  

如果没有找到,则定位到JDK 7 javaw.exe文件
示例:C:\Program Files\Java\jdk1.7.0_45\jre\bin\javaw.exe

-vm和其下面的路径粘贴到您的eclipse.ini文件中

-vm    
C:\Program Files\Java\jdk1.7.0_45\jre\bin\javaw.exe  

确保你在-vmarg之前,OpenFile之后输入上述内容。


我更新了环境变量路径,因为我有两个JDK(11和1.8),之后就出现了这个错误,对我也起作用了。 - Mutaealim
重要提示:“just before ...”是非常重要的。谢谢。 - Hossein Vatani

0

只需检查所有类路径等。仅有一个JAVA_HOME实例,将路径设置为%JAVA_HOME%/bin,并从'classpaths'等中删除任何出现的“jre”。它应该可以开动了!!


0

-vm C:\Program Files\Java\jdk1.7.0_45\jre\bin\javaw.exe

对我有效


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接