Reputation: 11384
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?
Upvotes: 9
Views: 5129
Reputation: 27677
This worked for me:
task copySpecificPlatform(type: Copy) {
from 'source/directory'
into 'target/directory'
if(inputs.sourceFiles.empty) throw new StopExecutionException("No files found")
}
Upvotes: 3
Reputation: 84786
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.
Upvotes: 2