【问题标题】:How to fix error: could not find the required version of the Java(TM) 2 runtime environment in '(null)'如何修复错误:在“(null)”中找不到所需版本的 Java(TM) 2 运行时环境
【发布时间】:2014-03-25 15:57:00
【问题描述】:

我对此进行了研究,但我所看到的解决方案都没有解决我的错误。

我尝试安装 Java EE 版本时出现上述错误,然后发现我必须先安装 Java SE。所以我安装了 Java SE 并将 JAVA_HOME 变量设置为 C:\Program Files\Java\jdk1.8.0,这是我安装 JDK 的位置。我还将 C:\Program Files\Java\jdk1.8.0\bin 放在我的 PATH 变量中。还是行不通。我还用 C:\Program Files\Java\jdk1.8.0\bin 尝试了 JAVA_HOME 变量,但没有成功。我还尝试在不将 PATH 变量更新到我放置 JDK 的位置的情况下进行安装。

我真的很困惑为什么会这样。我以前使用过 Java,但我不记得安装它时遇到过这么大的麻烦。

PS 我不是从命令行安装,我只是在 Firefox 中点击下载图标,然后点击下载。

【问题讨论】:

  • 在命令行中执行 java -version 或 javac -version 会发生什么?
  • 您运行的是 32 位还是 64 位版本的 Java SE 和 Java EE?
  • 您使用的是什么 IDE?
  • C:\Users\mitch>java -version java version "1.8.0" Java(TM) SE Runtime Environment (build 1.8.0-b132) Java HotSpot(TM) 64-Bit Server VM (构建 25.0-b70,混合模式)C:\Users\mitch>javac -version javac 1.8.0
  • 另外,我正在运行 64 位版本的 Java。在出现此错误时,我没有 ide,但我今天刚刚安装了 Eclipse。

标签: java installation


【解决方案1】:

尝试在命令行运行安装程序并传递 JRE 的路径而不是 JDK。

例如:

java_ee_sdk7-windows.exe -j "C:\Program Files\Java\jre8" 

【讨论】:

  • 即使是这些简单的东西也对我有帮助。我在网上做了很多尝试,但上面这条简单的线确实有魔力。顺便说一句,我有 7 个 64 位操作系统,但使用“java_ee_sdk-6u4-jdk7-windows”没有问题......谢谢 Moboid
  • 这是我的例子:java_ee_sdk-6u4-jdk7-windows -j "C:\Program Files\Java\jre1.8.0_25"
  • 我发现指向 64 位 JRE(例如 c:\program files\Java\jre6" 确实 not 工作,但指向 64 位 JDK相同的目录根目录(c:\program files\java\jdk1.6.0_45)。
  • 适用于 java_ee_sdk-7-jdk7-windows-x64-ml -j "C:\Program Files\Java\jre1.8.0_112"
  • 这是最好的答案。指向系统中正确的 jre 就可以了,非常感谢。将其传递给我的 IT 部门。
【解决方案2】:

我遇到了完全相同的问题,甚至下载没有 JDK 的版本也没有帮助! 我只是通过 JRE 从终端安装它例如:

java_ee_sdk7-windows.exe -j "C:\Program Files\Java\jre7"

它就像一个魅力!

【讨论】:

    【解决方案3】:

    我遇到了同样的问题,但需要额外的步骤才能使用命令行进行安装。在命令窗口(在我的 Windows 10 笔记本电脑上)我必须使用:

    cmd /d
    

    告诉 cmd 窗口在运行 java 安装可执行文件之前忽略注册表自动运行命令。使用 cmd /d 并切换到 .exe 文件所在的目录后,以下工作:

    java_ee_sdk-6u4-jdk7-windows-x64.exe -j "%JAVA_HOME%"
    

    其中 JAVA_HOME 是指向现有 JDK 安装 (C:\Program Files\Java\jdk1.8.0_65) 的系统环境变量。

    【讨论】:

      【解决方案4】:

      卸载一切,全部卸载。

      然后转到您的 Program Files 文件夹(和 (x86) 文件夹,如果在 64 位 Windows 上)并物理删除所有 Java 文件夹。

      重新安装 Java SE,然后重新安装 EE 包。有时 Windows 似乎有点困惑,您需要帮助它弄清楚该怎么做。

      【讨论】:

        【解决方案5】:

        如果要卸载,请转到 glassfish 文件夹并打开命令提示符,然后键入:

        uninstall.exe -j <The path to your JRE>
        

        【讨论】:

          【解决方案6】:

          这些要点可能会有所帮助。

          1. java EE SDK7 包含glassfish v4.0 并兼容JDK6 和JDK7。

          2. java EE SDK8 包含glassfish v5.0,它只兼容JDK7 and JDK8,不兼容JDK 9 或更高版本。

          3. 所以环境变量JAVA_HOME 必须指向上述JDK 之一的根目录。并且%JAVA_HOME%\bin应该添加到环境变量路径中

          4. 尽管遵循了上述所有操作,java EE SDK7 的设置仍会出错:

          找不到所需的 Java(TM) 版本;

          正如 Bakudan 和 laf8 所说,
          使用 run 打开 cmd,使用 /d /a 选项如下。

          cmd /d /a
          

          然后像这个命令一样使用 -j 选项运行 SDK7-setup

          sdk7.exe -j "%JAVA_HOME%"
          

          注意%JAVA_HOME% 用“”括起来

          【讨论】:

            【解决方案7】:

            当我尝试运行 Java EE 安装程序时,这发生在我身上。我所做的是从 Oracle 下载一个不包含 JDK 的 Java EE 版本,因为它已经安装在我的系统中。问题解决了!

            【讨论】:

              【解决方案8】:
              1. 打开注册表。
              2. 转到:HKEY_LOCAL_MACHINE\Software\JavaSoft\Java 运行时环境\
              3. 将 CurrentVersion 设置为所需的 JDK 版本。
              4. 检查选定 jdk 版本文件夹的 JavaHome 和 RuntimeLib 路径

              检查选定 jdk 版本文件夹的 JavaHome 和 RuntimeLib 路径 例如:“HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\1.7”。

              示例:

              • JavaHome=C:\Program Files (x86)\Java\jdk1.7.0_79
              • RuntimeLib=C:\Program Files (x86)\Java\jdk1.7.0_79\jre\bin\server\jvm.dll

              来源:http://tech-read.com/2009/05/19/how-to-solve-error-could-not-find-java-runtime-2-environment-while-opening-an-ide/

              【讨论】:

                猜你喜欢
                • 2011-07-19
                • 2014-11-15
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2012-06-05
                相关资源
                最近更新 更多