【问题标题】:How to disable Gradle daemon in IntelliJ Idea?如何在 IntelliJ Idea 中禁用 Gradle 守护程序?
【发布时间】:2014-10-14 20:10:39
【问题描述】:

我需要在 IntelliJ Idea 中禁用 Gradle 守护程序,因为不知何故 Scala 插件无法与守护程序一起使用(编译失败并显示 NullPointerException)。 我试图编辑我的 IntelliJ Gradle 构建配置以包含 JVM 系统参数-Dorg.gradle.daemon=false

我还尝试在同一位置使用 --no-daemon 标志(脚本参数和 VM 选项)。我还尝试在 IntelliJ 的 Preferences -> Gradle 菜单中指定这些选项。这些尝试都没有产生任何结果,守护进程继续启动,所以我必须在第二次running/compiling 之前杀死它。

根据https://docs.gradle.org/current/userguide/gradle_daemon.html#N10473~/.gradle/gradle.properties 中显式禁用守护程序都没有任何效果。

如何在 IntelliJ Idea 中禁用 Gradle 守护程序?

【问题讨论】:

    标签: java scala intellij-idea gradle gradle-daemon


    【解决方案1】:

    IntelliJ 通过 Gradle 工具 API 与 Gradle 交互,该 API 始终使用守护进程。 即无法将其关闭。

    您可以做的(提交错误报告后)不是使用 IntelliJ Gradle 集成,而是使用

    生成 IntelliJ 项目文件

    gradle idea

    【讨论】:

    • "gradle idea" 仅用于生成所需文件。尽管最新版本的 Idea 使用“基于目录”的项目结构,因此不再需要文件生成。无论是否生成文件,在 Idea 内部,项目都以相同的方式运行。可惜我们这里没有足够的灵活性。
    • gradle idea 在最新的 IntelliJ 版本中仍然有用(我一直在使用它)。 “不使用 IntelliJ Gradle 集成”意味着不使用“Gradle”类型的运行配置,因此项目不会以相同的方式运行。无论如何,关闭 Gradle 守护程序是错误的解决方案。相反,请尝试 tasks.withType(ScalaCompile) { scalaCompileOptions.fork = true }tasks.withType(ScalaCompile) { scalaCompileOptions.useAnt = false },这将在单独的进程中运行 Scala 编译。
    【解决方案2】:

    由于缺乏对旧库的支持,我将一个项目从 gradle 移动到 maven 构建管理工具。但是 Intellij 一直希望我触发 gradle 更改导入:除了“Maven 项目需要更新”之外,当我对 pom.xml 中的 ie 依赖项进行更改时,还有一个“Gradle 项目需要更新”,没有集成项目源文件中的 gradle 完全没有,没有包装器等。

    在我的情况下,我可以通过删除该行来摆脱 Intellij 困扰我的 gradle <property name="settings.editor.selected.configurable" value="reference.settingsdialog.project.gradle" /> in .idea/workspace.xml 并在 Intellij IDEA Ultimate 2019.2 中删除文件 .idea/gradle.xml

    【讨论】:

    • 同样的问题!
    【解决方案3】:

    我遇到了一个相关问题并设法通过配置禁用了守护程序 - 我将 org.gradle.daemon=false 添加到项目根文件夹中的 gradle.properties 文件中。如此处所述:Disabling Gradle daemon in a specific project

    【讨论】:

      【解决方案4】:

      要禁用单个命令(或单个 IntelliJ 运行配置)的守护程序,您还可以将 org.gradle.daemon=false 作为 VM Option 传递:

      -Dorg.gradle.daemon=false
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多