【发布时间】:2021-02-18 02:15:13
【问题描述】:
我正在实现一个用 Java 编写的自定义 gradle 插件。
我的自定义 gradle 插件有一个准备 yml 文件的任务。 yml 文件充满了各种块,其中包含: gradle 任务名称和该任务的一些参数。
我的想法是,我的自定义 gradle 插件将交付几个任务(所有任务都扩展了一些具有预定义属性的通用基础)。然后,如果我的用户想从他们的 build.gradle 中定义一些新的自定义任务,他们可以在 build.gradle 中包含该任务并在 yml 文件中引用。
到目前为止,这对于从插件内部定义的任务非常有效,我可以从 yml 文件中读取 gradle 任务,从 args 设置它们的属性并执行它们的操作。
我遇到的问题是如何从实施 build.gradle 中支持自定义任务定义?最初我试图从 build.gradle 内部扩展我的 CustomBaseTask,但我似乎对此没有可见性,只有 ootb 类(Exec、DefaultTask 等)。
从 build.gradle 定义自定义任务并将预定义属性从我的 gradle 插件传递给它的最佳方法是什么?
【问题讨论】:
-
关于在 Gradle 脚本中扩展基类的问题:是的,有可能。如果不行,你还记得先导入类吗?
标签: java gradle gradle-plugin