Gradle:如何使copySpec from/include成为必需的?

myss37ts  于 2023-06-23  发布在  其他
关注(0)|答案(1)|浏览(140)

Gradle:如何使copySpec from/include成为必需的?

processResources {

    from ("/path/foo") {
        include 'conf.xml'   <--- required
    }
}

如果目录“/path/foo”不存在或文件“conf.xml”未找到,则没有错误。
如果找不到文件,如何使gradle构建失败?例如,/path/foo/conf. xml是构建所必需的。
我可以像这样检查文件是否存在:

File file = new File("/path/foo/conf.xml")
if (!file.exists())
   ...

有很多这样的地方。copySpec中的几乎所有文件都是必需的,而不是可选的。

ryoqjall

ryoqjall1#

CopySpec不提供这种功能。检查文件,因为你给是你的选择。您可以将复制任务配置为在执行任务之前首先检查文件:

processResources {
    doFirst {
        File file = new File("/path/foo/conf.xml")
        if (!file.exists()) {
            // ...
        }
    }
    from("/path/foo") {
        include 'conf.xml'
    }
}

相关问题