首页 > 解决方案 > Gradle:在调试时使 JavaExec 任务增量

问题描述

我正在开发一个 gradle 项目,其中有一个 JavaExec 任务,该任务作为构建的一部分运行。当正常运行任务时,它是增量的,即当输入/输出没有改变时,任务被跳过。由于该项目是使用 gradle 构建的,因此当我运行我的应用程序时,它会在启动之前构建所需的模块。

这在使用标准的“运行”时工作正常(我使用 IntelliJ 作为我的 IDE),但是如果我使用“调试”启动它(具有相同的运行配置),JavaExec 任务总是重建,作为随机分配的“地址” jvmArgs 中的属性已更改,尽管输入/输出没有其他更改。

这会将通常的约 5 秒启动时间(当所有任务都是最新的)变成 1 分钟以上,因为它会重新运行任务。

有没有办法强制子进程使用的 jvm 的地址,以保留增量构建的好处?

我努力了:

标签: gradle

解决方案


推荐阅读