Fail Gradle Copy task if source directory not exist

纵饮孤独 提交于 2020-01-23 08:13:10

问题


I'm using Gradle to create a build script. I want to protect the script from wrong properties, one of the tasks in the script is simple Copy task and I notice that when I put non-exist directory as from parameter the task continue with Skipping task ':copySpecificPlatform' as it has no source files.

Is there a way to cause the copy task to fail in this case?


回答1:


You can try:

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

Every Task has its TaskInputs which source files are a FileCollection that has special method which configures the desired behavior.




回答2:


This worked for me:

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


来源:https://stackoverflow.com/questions/28130067/fail-gradle-copy-task-if-source-directory-not-exist

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!