11

我试图设置 Eclipse 以尝试我的 Android 应用程序开发。我下载了 Eclipse 并尝试运行它……发现我需要 Java JDK。谷歌搜索并找到 JDK 7u40 (jdk-7u40-windows-x64.exe) 并安装它。安装似乎很花哨,但是当我尝试运行 Eclipse 时出现错误,就像我java version在 cmd 中尝试一样。

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

我去了 regedit,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 位

检查Java版本时我确实已经通读了错误:找不到java.dll和链接的材料

4

9 回答 9

20

终于找到了一个论坛帖子,其中概述了注册表在未损坏时应该是什么样子。

  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

运行 cmdjava -version和 Eclipse 现在可以工作了

于 2013-10-14T18:32:20.543 回答
5

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

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

.
.

于 2014-06-28T12:38:11.840 回答
3

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

于 2014-02-27T21:38:23.993 回答
2

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

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

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

C:> java -version

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

于 2013-10-12T00:21:35.903 回答
1

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

于 2015-05-13T08:26:21.630 回答
0

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

于 2014-10-09T08:49:47.110 回答
0

当我单击 G2 应用程序时,我遇到了与 Oracle 相同的错误(如下)。

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

错误:找不到 java.dll

错误:找不到 Java SE 运行时环境。

我重启了机器,还是一样。

我重新安装了应用程序(包括 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 文件从上述路径复制并粘贴到我的应用程序文件夹中。文件并排,您可以看到文件大小差异,日期相差 8 个月。更新和更大的文件是最新的 Java 安装文件夹中的一个。

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

如果您遇到和我一样的问题,Java 一切正常,但仍然出现错误,请尝试找到您的应用程序出错的 java(.exe) 文件,重命名它并从您的 Java 文件夹复制并粘贴相同的文件( C:\Program Files\Java\jre7\bin) 复制到应用程序的 Java 文件所在的同一文件夹中。

我希望这可以帮助别人。

于 2014-04-04T10:22:04.613 回答
0

同时拥有 1.7 和 1.8 给我带来了这个问题。我猜在卸载 1.8 时,一些 1.7 注册表项被删除了。我错过了关键的 Java 运行时环境和 JavaHome 字符串。卸载所有版本的JDK并重新安装1.7(更新80)解决了我的问题。

于 2015-07-31T11:13:04.867 回答
0

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

我所做的只是安装 Java 提供的更新,然后我的设置就乱了套。我要解决的问题是,我没有自己更新注册表项,而是简单地卸载并全新安装了 JRE,一切都恢复了正常。

于 2018-05-04T06:59:53.900 回答