【问题标题】:Intellij idea says Java Home is DifferentIntellij idea 说 Java Home 是不同的
【发布时间】:2016-10-23 23:27:28
【问题描述】:

新创建的守护进程具有与预期不同的上下文。 将无法重新连接到此守护程序。上下文不匹配:
Java之家是不同的。

需要:DefaultDaemonContext[uid=null,javaHome=/home/administrator/Downloads/idea-IU-145.1617.8/jre,daemonRegistryDir=/home/administrator/.gradle/daemon,pid=11963,idleTimeout=null, daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=IN,-Duser.language=en,-Duser.variant]

实际:DefaultDaemonContext[uid=4839fb8c-418b-4666-9a66-40a60133958a,javaHome=/usr/lib/jvm/java-8-openjdk-amd64,daemonRegistryDir=/home/administrator/.gradle/daemon,pid= 15202,idleTimeout=60000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=IN,-Duser.language=en,-Duser。变种]

【问题讨论】:

  • 请提出一个实际问题或至少描述问题,而不仅仅是引用错误消息。 (错误消息当然可能是问题的一部分,但它不应该是唯一的部分。)

标签: intellij-idea gradle


【解决方案1】:

上述方法对我不起作用。我正在使用 Big Sur 11.4,M1 mac。

删除下面链接中的 Java 并重新安装: https://actonnotes.wordpress.com/2020/11/22/how-to-remove-openjdk-version-15-on-apple-macos/

【讨论】:

    【解决方案2】:

    当我将 tools.jar 复制到 jre/lib 时,IntelliJ 崩溃了,试图进行热连接。

    【讨论】:

      【解决方案3】:

      请务必在这 3 个地方检查并更正 JDK 版本:

      1. 检查Preferences -> Build,... -> Build Tools -> Gradle -> Gradle JVM:
      2. 查看Project Structure -> Project Settings -> Project -> Project SDK:
      3. 检查Project Structure -> Platform Settings -> SDKs:

      修复 gradle.properties 是一种肮脏的解决方法。最好在 IDE 级别解决此问题。

      【讨论】:

      • 我检查了所有这些,它们都是正确的,但它仍然给我同样的错误
      • 为我工作!就我而言,似乎我已经使用 sdkman 安装了多次相同的 JDK 版本。检查相同的配置是否出现在这 3 个地方确实有效!
      • 我不同意。在gradle.properties 中修复此问题是有目的的修复。它的优点是在从 CLI 或从其他应用程序执行 Gradle 时也可以工作。相反,应将 IDE 的特定于环境的配置保持在最低限度。我仍然建议在您的用户特定属性文件中配置它,并且不要用您的个人设置污染项目的属性。
      【解决方案4】:

      Fwiw - 之后有类似的事情,只是通过选择 build.gradle 文件重新打开项目修复它。 (另外,完成 brew cask install java 将 jdk 10 放在默认路径中)

      【讨论】:

        【解决方案5】:

        像魔术一样工作......现在已经挣扎了 2 天。 org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home in ~/.gradle/gradle.properties

        【讨论】:

          【解决方案6】:

          我遇到了同样的问题。 This answer 帮助了我。

          解决方案:在您安装 IntelliJ 的 bin 文件夹中,运行 idea64.exe 而不是 idea.exe

          【讨论】:

            【解决方案7】:

            虽然我没有找到不同 javaHome 的根本原因,但至少我找到了一个对我有用的解决方法:

            尝试在您的gradle.properties 中设置以下内容(在$HOME/.gradle/ 或您的项目构建目录中):

            org.gradle.java.home=/usr/lib/jvm/java-8-openjdk-amd64
            

            【讨论】:

            • 您的解决方案在 OS X 上对我有用。我使用了 org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home -- 谢谢。跨度>
            • 是的,我在 ~/.gradle/gradle.properties 中设置了 org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home(以前在我的 Mac 上不存在)
            • 创建一个文件 ~/.gradle/gradle.properties 并将 org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home 作为内容。确保使用您自己的 JAVA_HOME。
            • 我正在使用 IntelliJ IDEA 2020.3.1(社区版),我无法使用 Java 11(Azul)运行它,基于 Gradle 设置上的 Project SDK 切换到 Java 8(Azul),可以.
            猜你喜欢
            • 1970-01-01
            • 2019-11-30
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-11-22
            • 2015-02-06
            • 2023-02-11
            • 2017-02-13
            相关资源
            最近更新 更多