如果源目录不存在,则失败Gradle Copy任务

时间:2015-01-24 20:44:37

标签: gradle copy

我正在使用Gradle创建构建脚本。我想保护脚本免受错误属性的影响,脚本中的任务之一是简单的复制任务,我注意到当我将不存在的目录作为from参数时,任务继续Skipping task ':copySpecificPlatform' as it has no source files.

在这种情况下,有没有办法让复制任务失败?

2 个答案:

答案 0 :(得分:3)

您可以尝试:

task cp(type: Copy) {
    from 'empty'
    into 'target'
    inputs.sourceFiles.stopExecutionIfEmpty()
}

每个Task都有TaskInputs个源文件为FileCollection,其中包含特殊method,用于配置所需的行为。

答案 1 :(得分:1)

这对我有用:

task copySpecificPlatform(type: Copy) {
    from 'source/directory'
    into 'target/directory'
    if(inputs.sourceFiles.empty) throw new StopExecutionException("No files found")
}