如何在gradle zip任务中排除路径信息



事先为这个简单的问题而道歉,我对gradle是相对陌生的。

我想在构建过程中运行Zip任务,并在"存档"目录中创建一个.zip文件,但没有源文件的目录结构。我设法使task工作,但它保留了目录结构。我读到,对于Linux zip,有一个选项-j或-r可以使目录变平,但我不确定是否可以通过Gradle任务可用于我。

My input file structures looks similar to the below,
    ./libs/
    ./libs/file1.jar
    ./scripts/script1.sh
    ./scripts/script2.sh

,但我想最终得到一个带有目录结构的zip文件,如下所示,

./
./file1.jar
./script1.sh
./script2.sh

我当前的邮政任务如下,

task makeZipForDeploy(type: Zip) {
            from 'build/'
            include 'libs/*' //to include all files in libs folder
            include 'scripts/*' //to include all files in the scripts folder
            archiveName("${archiveFileName}")
            destinationDir file("${archivePath}")
}

解决方案比我想象的还要小。以下将使结构变平

task makeZipForDeploy(type: Zip) {
    from 'build/libs' //to include all files in libs folder
    from 'build/scripts' //to include all files in the scripts folder
    archiveName("${archiveFileName}")
    destinationDir file("${archivePath}")
}

最新更新