如何在同一插件中指定两个任务之间的依赖关系

问题描述

我正在编写gradle插件,该插件功能类似于protobuf-从其他类型的文件生成文件(这是专有文件)。用伪代码看起来像这样。

class CustomUnzipTask : AbstractcopyTask {
}

class Plugin : Plugin<Project> {
    dependencies.add("some:binary:dependencies")
    dependencies.add("some:binary:dependencies")
    afterEvaluate {
        val unzipTasks = conf.dependencies.map {
            tasks.register("unzip_$it.name",CustomUnzipTask::class.java) {
            }
        }
        tasks.withType(GenerateTask::class.java).configureEach {
             dependsOn(*unzipTasks)
        }
    }
}

class GenerateTask {
}

我有两种类型的任务,一种用于代码生成,这取决于二进制依赖项的存在。一种使用符号链接解压缩此二进制依赖关系的方法。我尝试将它们与dependsOn链接,但是我没有执行unzip。我无法共享完整的源代码,但是也许我正在做某些明显错误的事情,或者您可以为我提供示例以了解如何执行类似的操作?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)