gradle - 排除 Gradle tar/zip 工件中的基本目录

标签 gradle tar

maven assembly plugin有一个 includeBaseDirectory 选项(当设置为 false 时)避免在 tar/zip 工件中有一个与工件本身同名的顶级目录。

我想用 Gradle 达到相同的结果,但我不知道怎么做。我正在使用这样的配置:

task distTar(type: Tar) {
    compression Compression.GZIP
    extension "tar.gz"
}

我没有看到 the Tar task 的任何选项那做我想做的。如何使用 Gradle 在我的存档中排除基本目录?

最佳答案

通过重新配置 distribution plugin (由 application plugin 隐式应用)你可以简单地做(在​​ Kotlin DSL 中):

distributions {
    main {
        contents {
            into("/")
        }
    }
}

这会影响 TarZip 格式的输出。

(免责声明:此答案大致基于 this Gradle forum post)。

关于gradle - 排除 Gradle tar/zip 工件中的基本目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33661556/

相关文章:

java - 添加 Jersey MOXy 导致 Jetty 运行失败

java - apache commons 压缩的 Tar 问题

regex - 在 GNU tar 中使用正则表达式

php - tar文件保留完整路径。如何停止呢?

java - 无法生成签名的 APK

gradle - 通过Bintray部署代码通过Travis-CI测试

tar - 这看起来不像 tar 存档

linux - 试图 tar 一个目录而不是列出目录

java - 在 Eclipse 中构建 Gradle

jenkins - 谁能帮我理解如何在 Jenkins 中进行增量构建?