我的一个 IDEA 安装已停止运行我的 Gradle 运行配置。运行配置适用于我的项目中的常规 Java 应用程序子模块(该模块称为“服务器”),并且运行配置非常简单:
Gradle Project: /path/to/server/build.gradle
Tasks: run
没有虚拟机参数、工具窗口或任何其他配置。
当我运行它时,我得到这个:
没有其他输出。在我的其他机器上运行相同版本 IDEA 并针对同一源存储库进行相同 checkout 时,它不会失败。
我正在运行适用于 OS X 的最新 IDEA 3.5。我尝试通过删除 3.5 应用程序并从头开始安装 3.4 来降级到 3.4,但在运行配置时遇到了相同的错误。
我已经尝试(多次)使缓存无效并删除 out/目录。当重新创建所有内容时,我收到相同的错误。
我尝试删除运行配置并重新创建它。同样的错误。
我尝试为项目中的其他子模块创建不同的 Gradle 运行配置。当我尝试运行它们时出现同样的错误。
我可以切换到我的任何子模块并输入“gradle run”,它们运行得很好。只是在IDEA中他们不能再运行了。
更新:我编辑了运行配置,切换到“日志”选项卡,并启用“将控制台输出保存到文件”,将其发送到/tmp/idea.txt,并收到此错误:
新创建的守护进程的上下文与预期不同。
无法重新连接到该守护进程。上下文不匹配:
Java home 是不同的。
需要:DefaultDaemonContext[uid=null,javaHome=/Applications/IntelliJ IDEA CE.app/Contents/jdk/Contents/Home,daemonRegistryDir=/Users/user3562927/.gradle/daemon,pid=52404,idleTimeout=null, daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]
实际:DefaultDaemonContext[uid=ec6aa2e2-e5c9-4857-b08b-1e79fa37a332,javaHome=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home,daemonRegistryDir=/Users/user3562927/.gradle/daemon ,pid=53135,idleTimeout=60000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en, -Duser.variant]
不知道为什么 IDEA 无法在“4:运行” Pane 中向我显示此信息。
至少我现在知道这是与JDK相关的。我已经尝试在项目结构中更新 JDK,并尝试了本网站上建议的各种其他补救措施,但还没有成功,但我会继续尝试。
最佳答案
我删除了机器上的所有 JVM,并煞费苦心地将我的项目和模块 SDK 全部切换到唯一剩余的 JDK。运气不好。
然后我注意到“运行” Pane 左上角的这个小图标,单击该图标时,会给出构建输出:
我的 JVM 规范中似乎存在垃圾字符。它定义的唯一位置是在 ~/.gradle/gradle.properties 中,所以我删除了该文件(即使其中没有垃圾字符)。之后,我又回到“新创建的守护进程有不同的上下文”错误。
在尝试了很多其他事情之后,我终于删除了项目的 .idea
目录并重新创建了它。这终于让问题消失了。
JetBrains 确实需要解决这个问题。我必须重新创建我的字典、代码风格设置等。IDE 应该能够处理多个 JDK 的存在,而不会像这样令人窒息。
关于java - IntelliJ IDEA 无法再运行我的 Gradle 运行配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42918412/