Eclipse – 没有Java(JRE)/(JDK)…没有虚拟机

我试图让Eclipse v3.5(伽利略)在我的电脑上重新运行 – 我已经运行它没有任何问题,但现在我不断收到此错误:

Java运行时环境(JRE)或Java开发工具包(JDK)必须可用才能运行Eclipse。 search以下位置后未findJava虚拟机:C:\ eclipse \ jre \ javaw.exe当前PATH中的javaw.exe

我刚刚完成了JDK和SDK的全新安装。

我有Windows 7(x64)。

这是怎么回事? 我如何解决它?

我无法运行任何ipconfig / tracert /或ping。

Eclipse将默认尝试启动默认的“ java.exe ”( PATH引用的第一个)

三件事要记住:

  • “安装” JRE或JDK可以像从另一台计算机上解压缩或复制一样简单:没有特殊的安装步骤,并且您可以拥有任意数量的不同JVM版本(1.4,5.0,6.0 …) ,“安装”(复制)在磁盘上的任何地方。
  • 我会build议总是运行Eclipse 最新的JRE可能(从最新的热点演变中受益)。 您可以:
    • 在eclipse.ini中引用确切的JREpath。
    • 复制你的<eclipse> / jre目录中的任何JRE 。 在这两种情况下,都没有更新的PATH
  • Eclipse会话中引用的JVM 并不总是用于启动Eclipse的JVM,因为:
    • 你只需要一个JRE来启动Eclipse,但是一旦Eclipse启动,你应该为你的项目注册一个JDK(尤其是Java源代码和debugging目的,理论上也是编译的,但是Eclipse有它自己的Java编译器)注意:你可以注册Eclipse中的一个JRE,因为它足以运行你的程序,但是JDK再次允许更多的操作。
    • 即使Eclipse中的默认注册Java是用于启动会话的Java,但您可能希望注册一个较旧的SDK(包括非Sun),以使用类似于JRE的JRE运行/debugging程序实际上被用于生产。

安装了JRE


2012年6月, jmbertucci评论:

我正在运行Windows 7 64位,我已经安装了32位JRE。 我下载了64位的Eclipse,查找64位的JRE。 因为我没有64位JRE,所以抛出错误,这是有道理的。

我去了Java手动安装页面(这不是直接可以访问的),并安装了64位版本。 请参阅“ 所有操作系统的Java下载 ”。 这就是我所需要的。


2016年4月: 史蒂夫梅恩补充说 :

我不得不编辑eclipse.ini文件来引用正确的Javapath – 当eclipse.ini有一个值时,Eclipse根本不使用环境PATH

只需复制这个文件:

 c:/Program Files/Java/jre(5,6,7..any version)/bin/javaw.exe 

到Eclipse文件夹

*注意只针对Windows进行testing

在Eclipse文件夹中替换javaw.exe

关于 JAVA_HOME所有其他答案都不完全正确。 Eclipse的确参考JAVA_HOME 。 仔细查看错误消息:

…在你当前的path中

它实际上是说PATH ,而不是JAVA_HOME

右键单击我的电脑,然后select属性 (或按Winkey + 暂停 ),转到高级选项卡,单击环境variablesbutton,在系统variables列表中的底部selectPath (不, 不是 Classpath ),单击编辑并添加;c:\path\to\jdk\bin到值的末尾。

另外,如果不存在,也可以添加JAVA_HOME环境variables,并在PATH使用它。 在同一个对话框中点击New,并添加JAVA_HOME ,其值为c:\path\to\jdk 。 然后,您可以将;%JAVA_HOME%\bin添加到Path设置值的末尾。

从控制面板打开Windows的系统属性,并search环境variables部分:

  • 添加一个指向JDK安装目录的JAVA_HOME条目(例如C:\ Program Files \ Java \ jre6)
  • findpath条目并在结尾添加以下内容:%JAVA_HOME%\ bin
  • 确定更改
  • 重新启动Eclipse,以便了解新的环境

大多数Java工具现在可以通过使用JAVA_HOME环境variables或通过在Path环境variables中查找java.exe / javaw.exe来查找Java安装。

如果你下载了64位版本的Eclipse; 它会寻找64位版本的JRE。 如果你下载的是32位版本的Eclipse; 它会查找32位版本的JRE

我所做的就是安装JRE的32位和64位版本。 您可以从SUN Oracle站点获取。 JAVA网站似乎自动安装Java的32位版本。 我想这是因为networking浏览器。

事实certificate,我所需要做的就是将“path”改为:

“C:\ Windows \ system32; C:\ Windows; C:\ Windows \ System32 \ Wbem; C:\ Program Files(x86)\ Java; C:\ Program Files(x86)\ Java \ jdk1.6.0_14 \ bin “

这样做:)

我有Windows 7的64位,和我有同样的问题与日食。 为了得到它的工作,我不得不使用Internet Explorer(64位版本)来下载Java。 这是让java安装64位版本的唯一方法。 当我使用firefox来安装java时,它会自动安装一个32位版本(所以白痴!)。 Eclipse 64位版本不会检测到java 32位版本。

解决scheme简而言之:

右键点击我的电脑,点击属性,然后高级系统设置,popup一个系统属性窗口,在高级选项卡下select环境variables,popup环境variables窗口,在系统variables部分下findPATHvariables,然后编辑值,将其更改(版本; jre6,jre7等)到任何你正在使用的,例如我的: C:\Program Files\Java\jre7\bin

不要担心,我也被这个错误和致命的破坏,当我得到它,我是如此沮丧,即使我给了离开一个android编程,但我知道了,只需首先复制此代码并粘贴到您的系统variables在path下…

C:\ Program Files; C:\ Winnt; C:\ Winnt \ System32; C:\ Program Files \ Java \ jre6 \ bin \ javaw.exe

现在从你的path复制“jre” 文件夹 ,就像我在这条path下有“jre”一样

  C:\Program Files\Java 

并将其粘贴到您的eclipse文件夹意味着您的eclipse.exe文件放置。 就像我在这个位置设置了我的日食一样

  F:\Softwares\LANGUAGES SOFTEARE\Android Setup\eclipse 

所以在eclipse文件夹里面粘贴“jre”文件夹。 如果你有“jre6”,那么将其重命名为“jre”….并运行你的蚀,你将得到解决scheme…

  //<<<<<<<<<<<<<<----------------------------->>>>>>>>>>>>>>>>>>> 

其他解决scheme:2

如果问题无法解决上述步骤,请按照下列步骤

  1. 从你的Javapath(如C:\ Program Files \ Java \ jre6 *等)拷贝文件夹“jre”,并将其粘贴到你的eclipse目录中(你的eclipse的位置在哪里)
  2. 转到eclipse.ini文件,打开它。
  3. 改变你的javaw.exe文件的目录

-vmF:\ Softwares \ LANGUAGES SOFTEARE \ Android Setup \ eclipse Indigo版本32位\ jre \ bin / javaw.exe

现在当你启动eclipse的时候它会searchjavaw.exe,所以它会searcheclipse.ini中的path,因为它现在在同一个文件夹中,所以它将启动javaw.exe,它将开始工作。

如果您仍然有任何查询,你可以再问一遍,只要去我的个人资料,找出我的电子邮件ID。 因为我爱堆栈溢出论坛,它使我成为一名程序员。*

在你的eclipse.ini文件中,你需要更新VM的path来指向你的机器上安装javaw.exe的相同位置。

不要依赖windowspathvariables,因为几乎每次更新都会改变它。 例如,一个chrome(64位机器上的32位)java更新将32位JVMreplace为全系统的64位JVM。 还要注意,这个入口必须是eclipse.ini中的最后一个,否则它不起作用,而且 – 另外说明 – JAVA_HOMEvariables不被eclipse.exe评估。

即使你的JAVA_HOME和Pathconfiguration有效,他们可能有这个问题,所以最简单的方法是在你的eclipse installtion文件夹中打开你的eclipse.ini

-vm

C:\ Program Files \ Java \ jdk1.7.0_71 \ bin \ javaw.exe

用你的jdk或jre的pathreplaceC:\ Program Files \ Java \ jdk1.7.0_71 \ bin \ javaw.exe

编辑我的eclipse.ini文件来更新新更新的JDK。 以前我有jdk1.7.0_09,现在更新到jdk1.7.0_80和eclipse扔这个错误。

Java运行时环境(JRE)或Java开发工具包(JDK)必须可用才能运行Eclipse。 search以下位置后未findJava虚拟机:C:/ Program Files / Java / jdk1.7.0_09 / bin / javaw

更新eclipse.ini之后,

 -vm C:/Program Files/Java/jdk1.7.0_09/bin/javaw 

 -vm C:/Program Files/Java/jdk1.7.0_80/bin/javaw 

Eclipse工作正常。

在eclipse文件夹中创build一个batch file并写入:

 eclipse -vm C:\Sun\SDK\jdk\jre\bin\javaw.exe 

请参阅http://wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F

当我遇到这样的问题时,在我的情况下,我使用x86 Eclipse安装了x64 JDK + JRE。 所以安装x86 JDK + JRE解决了我的问题:)我还在eclipse文件夹中创build了jre文件夹,并将bin文件夹从本地pathC:\Program Files (x86)\Java\jre7..\eclipse\jre\

  • 64位操作系统 – >您需要:64位Java和64位Eclipse
  • 32位操作系统 – >您需要:32位Java和32位Eclipse

如果您在64位计算机上使用默认更新来更新Java版本(并且您有32位浏览器 ),则Java将安装32位版本。 你应该find64位的Java版本并安装它。

上周我有一位同事有这个确切的问题。 他通过安装Eclipse的x64版本和x64 JDK来修复它。

编辑:他安装必要的插件后重用他的旧工作区,所以不应该是一个问题

有一个更简单的方法来做到这一点。 只需运行cmd x64。 在开始菜单中键入cmd x64来search栏,你会发现它:)或者,你应该设置程序文件(x86)的path…例如C:\ Program Files(x86)\ Java \ jre6

只需在环境variablesPut“;”中添加Ex:C:\ Program Files \ Java \ jre5 \ bin的JRE PATH; 在每条path之间。 然后点击eclipse.exe它会工作…..

你得到这个错误的原因是因为eclipse需要一个JRE来启动,它找不到。 它search的第一个地方是当前目录,然后是eclipse.ini文件,最后是系统path。 所以如果通过这三个地方中的任何一个找不到正确的jvm(位版本是不同的),那它就是垃圾箱

推荐的方法是编辑eclipse.ini文件并通过在文件中包含以下行来告诉eclipse在哪里查找vm / jre:

-vm
[通往你的java.exe的path](通常在“C:\ Program Files \ Java \ jre7 \ bin”下)

PS要编辑eclipse.ini,您可能需要移动它,编辑并粘贴回来

来源: – 维基

首先感谢YouYou的解决scheme! 我试过YouYou( https://stackoverflow.com/a/14464653/801919 )的答案。 最初,它不适合我。 以下是我需要采取的步骤:

  1. 最初,我的新机器上没有安装Java。 所以,我不得不安装(从http://java.com/en/download/manual.jsp下载)。;
  2. 我正在运行64位操作系统。 但是,在下载时,我收到了一条消息,可以帮助我select要下载哪个版本的Java: Choose the 32-bit download to use with a 32-bit browser. 因此,我下载了32位版本。
  3. 然后,我按照https://stackoverflow.com/a/14464653/801919中提到的过程,希望得到解决scheme。;
  4. 我得到了一些其他的错误: Java was started but returned exit code=13
  5. 然后,我安装了64位版本的Java。
  6. 从该版本复制javaw.exe

… Eclipse开始工作了! Yaay!

那么这个答案是那些谁尝试了所有他人还没有运气,可能这是Android工作室Eclipse我通常这样做时,一切都失败了。

  1. find你的Android sdk文件夹,并用文本编辑器打开android.bat文件
  2. 你会在文件的开头find这样的一些命令,

set java_exe=

call lib\find_java.bat

if not defined java_exe goto :EOF

  1. 改变他们

    set java_exe= < 你的java.exe文件的path(可以在你的jdk文件夹/ bin目录下find) >

  2. find线路

rem Set SWT.Jar path based on current architecture (x86 or x86_64) for /f "delims=" %%a in ('"%java_exe%" -jar lib\archquery.jar') do set swt_path=lib\%%a

  1. 将其replace为set swt_path= < 相应swt.jar文件的path,对于x86,位于sdk \ tools \ lib \ x86和x64位于sdk \ tools \ lib \ x86_64 >
  2. 保存并closures文件,现在你很好去..

如果在环境variables的PATHvariables中添加了C:\ Program Files \ Java \ jdk1.8.0_92 \ bin,eclipse给出了相同的错误

检查在eclipse文件夹中find的eclipseconfiguration设置文件,你必须在C:\ program Files中看到相同的jdkpath

在这里输入图像说明

我希望它有帮助。

尝试将您的JAVA_HOME设置为正确的文件夹。 Google用于在Windows中设置环境variables。

检查窗口>首选项> Java>已安装的JRE。 确保那里有东西; 如果没有,请添加一个。

你最近更新了你的JDK吗?

JDK不在默认path中安装JVM。

除非需要使用外部工具才能像Ant一样运行,否则非JDK足以让Eclipse运行。 安装这种JVM最简单的方法是去http://java.com ,让它安装任何想要安装。

然后再次双击Eclipse二进制文件。

将JAVA_HOMEvariables和广告JAVA_HOME / bin设置为evnrionmentpathvariables。

我有同样的问题(Windows 7 64位,64位JDK,32位Eclipse),我发现了两个解决scheme:

  • 安装64位版本的Eclipse(通过单击下载页面上的“Development Builds”选项卡find)。
  • 安装JDK的32位版本。

我有同样的问题。 简单的方法,我来解决它是安装JRE和eclipse为x86或x64。 当他们的位types不匹配时,eclipse找不到它。 所以,如果为了使它们匹配而卸载并重新安装并不是什么大问题,我会这样做。

我最终安装了:Java运行时环境1.7.0.3(64位)和Eclipse Indigo(3.7)(64位)

然后,它只是工作。

当我只复制javaw,第二个错误发生,没有一个java.dll文件,当我也复制它时,eclipse没有启动,我所做的是我复制整个jdk文件夹到eclipse文件夹,并将id重命名为jre。 问题解决了。

一个问题是Eclipse-64bit版本和我们的Java安装是32位版本之间的冲突。 这不是很容易解决,因为Java安装页面没有给出64位的选项 – 它假定32位和下载并安装32位版本。 要解决这个问题,请按照以下步骤操作:

  1. 通过转到Java SE运行时环境7下载64位版本(此链接使我们可以select下载64位版本的Java)。 下载并安装这个。
  2. 现在,试图安装Eclipse仍然会抛出一个错误。 因此,我们从C:/program files/Java/复制jre7文件夹,并将其复制到我们的Eclipse安装文件夹中。
  3. 现在,我们把它重命名为jre

安装Eclipse。

–launcher.appendVmargs -vm C:\ Program Files \ Java \ jdk1.7.0_79 \ jre \ bin \ javaw.exe -vmargs