使用Gradle将zip文件依赖项解压缩到单独的目录中

时间:2016-10-21 23:46:51

标签: gradle android-gradle

我想提取多个与我的构建相关的zip文件。

现在我有:

project.tasks.create(name: 'extractExternalNativeDependencies', type: Copy) {
        from {
            configurations.externalNative.collect {
                zipTree(it)
            }
        }
        into project.file(".externalNativeDependencies")
    }

这会将所有依赖项提取到同一文件夹中。我希望每个zip都被提取到它自己的文件夹中。

我已经看过Gradle extract multiple dependencies each to a different directory但是#34;工作解决方案"不是真的有效。如果构建在没有清理的情况下运行两次就会失败,如果源拉链是最新的,它实际上不应该运行。

1 个答案:

答案 0 :(得分:1)

以下task配置会将每个依赖项扩展到其自己的子文件夹中:

task extractExternalNativeDependencies(type: Copy) {
    configurations.externalNative.collect { dependency ->
        from(zipTree(dependency)) {
            into dependency.name
        }
    }

    into project.file(".externalNativeDependencies")
}
相关问题