Задача Zip автоматически проверяет, есть ли у нее файлы в Zip, поэтому нет необходимости проверять с помощью Files.exists (...).
В from "${zipSrc}"
, zipSrc
рассматривается как абсолютный путь/target/files
Я думаю, что вы пытаетесь сделать это
project.task("X", type: Zip) {
String zipSrc = "target/files" // zipSrc no longer absolute
archiveName = "${project.rootProject.name}-files.zip"
destinationDir = project.file("${project.buildDir}/libs")
from "${zipSrc}"
}