“找不到Java SE Runtime Environment。”安装Java之后

时间:2013-10-12 00:12:52

标签: java eclipse windows-7-x64

我正在尝试设置Eclipse以尝试Android应用程序开发。 我下载了Eclipse并尝试运行它...发现我需要Java JDK。用Google搜索并找到JDK 7u40(jdk-7u40-windows-x64.exe)并安装它。安装似乎已经花哨了,但是当我尝试运行Eclipse时,我得到了一个错误,如果我在cmd中尝试java version

Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.

我去了注册表,HKEY_LOCAL_MACHINE / SOFTWARE / JavaSoft和Java Runtime Environment在那里不存在。似乎这更像是一种症状,而不是我问题的根本原因。

我的PATH看起来像

PATH=C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program File
s (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Window
s;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Progra
m Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Window
s Live\Shared;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\AIR\bin;C:
\Program Files (x86)\nodejs\;C:\SDK\Android\tools;C:\SDK\Android\platform-tools;
C:\SDK\ANT\apache-ant-1.9.2\bin;C:\Program Files\Java\jdk1.7.0_40\bin\

%JAVA_HOME%= C:\Program Files\Java\jdk1.7.0_40

我正在运行Windows 7 Pro 64位

我之前已经阅读了Error when checking Java version: could not find java.dll和相关材料

9 个答案:

答案 0 :(得分:15)

最后找到一个论坛帖子,概述了注册表在没有被破坏时应该是什么样子。

  1. 添加了密钥HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
  2. 添加字符串值CurrentVersion = 1.7
  3. 添加了密钥HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7
  4. 添加字符串值JavaHome = C:\Program Files\Java\jre7
  5. 运行cmd java -version和Eclipse现在可以正常运行

答案 1 :(得分:4)

你可以告诉eclipse在eclipse.ini中使用哪个JRE。如果你的话 在IDE中安装需要1.7的捆绑包需要1.7 JRE 运行IDE本身。 将以下行添加到eclipse.ini文件

-startup plugins / org.eclipse.equinox.launcher_1.2.0.v20110502.jar
-vm C:\ Program Files(x86)\ Java \ jre7 \ bin \ javaw.exe


答案 2 :(得分:2)

您可以尝试重新安装JDK。我遇到了这个问题,因为我在PC上卸载了很多java东西。当我打开Eclipse时,发生了错误。

答案 3 :(得分:1)

32位eclipse无法加载64位Java运行时环境。

再次尝试使用32位Java运行时环境,或者(首选)将Eclipse升级到64位版本。

另外,一个好主意(来自命令行)

C:> java -version

哪个应该为您提供有关JVM的详细信息。如果它不起作用,请在修复Eclipse使用Java之前专注于修复它。

答案 4 :(得分:1)

我们大多数人建议您修改注册表,但如果您不想这样做,因为它有风险,或者您没有权限这样做,您可以卸载所有java版本,重启你的机器,安装所需的java版本,确保设置路径设置。这对我有用。

答案 5 :(得分:0)

当我点击G2应用程序时,我得到了同样的错误(下面)。

  

错误:打开注册表项' Software \ JavaSoft \ Java Runtime Environment'

     

错误:找不到java.dll

     

错误:找不到Java SE Runtime Environment。

我重启机器,仍然是一样。

我重新安装了应用程序(包括Oracle),仍然是相同的。

我按照建议检查了所有建议的注册表设置,我的注册表很好。

我检查了快捷方式路径,然后在快捷方式中用一个字符串激活javaw.exe。我导航到G2程序文件,我尝试直接在应用程序文件夹中单击javaw.exe并得到相同的错误。

我对此做了一些研究,发现Java在以下路径中有一个Javaw.exe:

C:\ Program Files \ Java \ jre7 \ bin \ javaw.exe

我导航到路径并点击了这个javaw.exe文件并没有收到任何错误

我将G2应用程序中的javaw.exe重命名为javaw_old.exe,然后将javaw.exe文件从上面的路径复制并粘贴到我的app文件夹中。文件并排,您可以看到文件大小的差异,日期是8个月的差异。较新和较大的文件是最新Java安装文件夹中的文件。

单击G2快捷方式,打开应用程序,没有任何错误。

如果您遇到与我相同的问题,其中所有Java都可以,并且您仍然收到错误,请尝试找到您的应用程序错误的java(.exe)文件,重命名并复制并粘贴您的相同文件Java文件夹(C:\ Program Files \ Java \ jre7 \ bin)到应用程序的Java文件所在的文件夹。

我希望这有助于某人。

答案 6 :(得分:0)

只需重新安装您的JRE即可。卸载后,您可能需要重新启动计算机。

答案 7 :(得分:0)

1.7和1.8都让我遇到了这个问题。虽然卸载1.8的一些1.7注册表项被删除了我猜。我错过了关键的Java Runtime Environment和JavaHome String。卸载所有版本的JDK并重新安装1.7(更新80)解决了我的问题。

答案 8 :(得分:0)

我有完全相同的问题和完全相同的错误集。那是因为我的注册表项Java Runtime Environment完全丢失了。 我没有任何冲突的32/64位设置或任何冲突的1.7 / 1.8设置。

我所做的只是安装Java提供的更新,我的设置变得混乱。 我要解决的是,我只是自己卸载并重新安装了JRE,而不是自己更新注册表项,一切都恢复正常。