为多个 gradle 任务创建一个临时目录

Create a temporary directory for multiple gradle tasks

我在 windows 环境中与 gradle 一起工作。我希望我的 gradle 脚本创建一个临时目录,不同的任务以不同的顺序对其执行操作,然后在完成后将其删除(可选)。如何在 gradle 脚本中创建这个临时目录?

我最初的想法是 Task.temporaryDir,但是该目录仅在任务期间存在。

很抱歉,如果这很明显,我是 Windows 的新手,昨天刚开始学习 gradle。

如果您需要一些任务输出在任务执行之后仍然存在,那么最好在项目构建目录中创建一个子文件夹。

task myTask << {
    file("${buildDir}/foo").mkdirs()
}

如果您需要在项目结构之外创建一个临时目录,可以添加:

def tempDir = File.createTempDir()
tempDir.deleteOnExit() // use with care, might be problematic with when daemon mode is used

例如在脚本开头的某处。

然后创建的文件夹可以用作其他地方的输出目录。