【问题标题】:Android Studio shows an error when trying to use Embedded JDK instead of a custom install尝试使用嵌入式 JDK 而不是自定义安装时,Android Studio 显示错误
【发布时间】:2017-09-07 09:26:17
【问题描述】:

更新到 Android Studio 2.3 后,我一直无法使用嵌入式 JDK。当我尝试构建项目时,出现如下错误:

Error:The newly created daemon process has a different context than expected.
Java home is different.
Expecting: 'D:\Development\IDE\AndroidStudio\jre' but was: 'C:\Program Files\Java\jre1.8.0_121'.
Please configure the JDK to match the expected one.
<a href="open.project.structure">Open JDK Settings</a>

但是JAVA_HOME这个环境变量并没有定义,但是我仍然可以使用普通的JDK任何问题,所以我不认为这是一个问题。 Android Studio 在哪里找到阻止我使用嵌入式 JDK 的JAVA_HOME

我尝试卸载系统 JDK 以使其正常工作,并更新了 java,导致它指向 JRE。然后我重新安装了 JDK,当我指向它时,它工作正常。但我想使用嵌入式 JDK。有什么想法吗?

我已尝试在 gradle.properties 中设置 JAVA_HOME,与 cmets 中的链接一样,但它仍然显示错误。

我添加的行是:

org.gradle.java.home=D:/Development/IDE/AndroidStudio/jre

它应该使嵌入式 JDK 工作(并在 IDE 中更改 JAVA_HOME)但它没有。它仍然会导致本文顶部提到的相同错误。

在sn-p里面写着jre,那是因为我复制它的时候,我刚刚卸载了JDK。更新 JDK 和 Java 导致 JAVA_HOME 被设置为 JDK 位置,但它没有被定义为环境变量。我尝试删除 Android Studio 的 config 文件夹中的 JDK 表,但没有成功。

当我将 JDK 设置为嵌入式时它的外观:

【问题讨论】:

  • 我已经尝试过了 - 仍然给我错误(与我在问题中发布的相同)
  • 然后你可以看到this - 转到页面的“设置JDK版本”部分。
  • JDK版本不是JDK位置
  • 那里有使用捆绑 jdk 的说明。

标签: android-studio android-studio-2.3


【解决方案1】:

尝试重置更新 JDK 的路径。并再次检查。也许它会帮助你。还要清除您的 android studio 临时缓存和所有内容。

【讨论】:

  • “重置路径” - JAVA_HOME 还是 Android Studio 中的 JDK 位置?无效的缓存/重新启动,但它不起作用。
  • 在你安装你的android studio的地方安装java。然后重置你的java所有路径并从cmd检查java,然后重新启动你的系统并检查它
【解决方案2】:

我通过卸载所有 jdk 安装和更新来解决此问题,然后仅重新安装一个 jdk 并确保其环境。变量

我没有解决方案,但我遇到了与从 java_home/jre 打开 android studio 时发生的相同的问题,因此接下来将分叉的所有 JVM 都将来自此路径,而您的系统变量告诉 Gradle 获取他的 java.util.来自JAVA_HOME的exe

我试图让 gradle 从 jre 读取但它也失败了我试图让 android studio 从 java_home/bin 打开但它也失败了

【讨论】:

  • 我这样做了,并且从一开始我只安装了两个 JDK。没有帮助。删除 JDK 并重新安装 JRE 后,java home 指向 JRE 安装。然后当我安装 JDK 时,它指向 JDK,而我没有定义 JAVA_HOME。我什至从未定义过 JAVA_HOME,没有它就可以工作
【解决方案3】:

我在使用 Android Studio 2.2.3 版的嵌入式 JDK 时遇到了完全相同的问题,当我更新时,每次工作室提示未找到 JRE 然后我在项目文件夹中添加系统 JDK 路径,现在整个 Android 工作室挂起并且我切换回 Android Studio 2.2.3。看来 Android Studio 2.3.1 版本有问题。

【讨论】:

    【解决方案4】:

    看来,JDK版本有一些不匹配。

    所以试试这个: 首先卸载所有的 Jdk/jre 和 Android Studio。

    清除临时/预取等

    然后只需安装最新版本的 Android Studio。

    记住:不要安装任何其他 JDK/jre,并确保您的系统具有正确的互联网连接。所有丢失的文件都会自动下载。

    我已经尝试过了,它对我有用。我希望它也对你有用。

    【讨论】:

    • JDK 和 JRE 都是同一个版本,当我开始遇到这个问题时我更新了它们。该问题在安装 2.3 后发生并在 2.3.1 中继续存在。当前运行 2.3.1,这是最新版本。我无效/重新启动 -> 设置嵌入式 jdk(给出错误) -> 无效/重新启动 -> 仍然不起作用
    【解决方案5】:

    不得不说AS在环境设置上的问题太多了。我们需要了解一些概念。

    1. 作为默认的java运行环境本身,如下图。

    AS default java runtime environment itself.

    1. 系统有另一个Java_home,如下所示。

    System's JDK version

    那么问题来了,如果系统的JDK版本与AS的JDK版本不匹配会怎样?

    我。

    java.lang.UnsupportedClassVersionError

    ii.

    gradle 失败:认证 ...

    三。还有一些其他的错误我现在不记得了。

    解决方案: 如果您的 AS 更新到最新版本,您应该将您的 Gradle 更新到最新版本,并确保您系统的 JDK 与 AS 的 JDK 版本匹配。至少,你的idk版本更新到JDK1.8.0以上。当您完成所有这些后,尝试重新启动您的 AS,如果确实有效,请尝试重新启动您的计算机。

    额外: Gradle同步时代理软件有一些影响,如果有证书提示,请尝试关闭代理软件再试。

    【讨论】:

    • Gradle 和 JDK 是最新的更新。使用 1.8 更新 121
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 2023-02-13
    相关资源
    最近更新 更多