0

IntelliJ IDEA 2021.1 和 2021.2 在我退出程序时让 Gradle Daemon 继续运行。我想知道是否有办法从 IntelliJ 中暂时停止或重新启动 Gradle 守护程序而不退出。Gradle 对文件有一个锁定,当简单地关闭 IntelliJ 时不会消失。让它释放锁的唯一方法是从当前运行的 Gradle 版本运行 gradle --stop 。到目前为止,我发现的方法远不理想。我会分享它们以防他们帮助其他人,但我希望有更好的方法。

如果我手动浏览到我的 User Home.gradle\wrapper\dists\gradle-xyz-all<hash>\gradle-xyz\bin 以获取我知道 IntelliJ 正在使用的 Gradle 版本,那么我可以手动运行该 gradle 命令--stop 标志,它将停止守护进程。所以,是的,我想我可以为此创建一个批处理脚本,但事实上它存储在这样一个涉及某种哈希码的隐藏目录中,我真的不想为不同的系统更改这个脚本。

在 InteliJ IDEA 中,如果我单击名为“执行 Gradle 任务”的 gradle 菜单顶部的“大象”按钮,它会弹出一个以“gradle”开头的命令行,但它只接受已建立的任务名称,它不会t 接受“gradle --stop”。它给出了错误未知的命令行选项“--stop”。

作为一个不太理想的解决方法,我已将该路径末尾附近的 gradle-xyz 文件夹复制到 c:\Gradle\ ,并将该版本的 bin 文件夹添加到 PATH 环境变量中。所以,至少,我现在可以打开一个命令提示符并运行 gradle --stop。当我希望我的默认/命令行可访问的 gradle 版本与我正在处理的项目不同时,这会成为问题。是的,我可以创建一堆指向所有不同版本的自定义批处理脚本。这听起来不好玩。我很难相信我无法在 IntelliJ 中执行某些操作来关闭当前正在运行的 gradle 守护程序。

4

1 回答 1

0

IDE 不会杀死 Gradle 守护程序,因为该守护程序可以被另一个构建重用,包括从命令行进行构建时。

Show Gradle Daemons有一个动作(你可以从 Help | Find Action动作调用它):

在此处输入图像描述

它将向您显示能够阻止它们的 Gradle 守护进程列表: 在此处输入图像描述

于 2021-10-07T07:15:09.613 回答