2

在插件中,我希望能够根据用户在我的插件的配置闭包中放置的配置来选择其他插件的应用(例如 Nexus 插件或 Bintray 插件,但不能同时使用两者) 。

我通常会在评估项目后获得我的插件的配置。这为时已晚,因为我希望允许用户自己覆盖其他插件的默认配置(因此必须更早应用它们)。

我可以将我的插件分成两个单独的插件(在同一个 JAR 中),并要求应用第一个插件,提供配置闭包,应用第二个插件并使用为第一个插件提供的配置来决定应用哪些 3rd 方插件。

有没有更好的方法让我的插件足够早地获得配置,以便能够有条件地应用其他插件(并允许它们使用它们的配置闭包)?

4

1 回答 1

0

您可以使用 gradle 61.5。初始化脚本插件。这将允许您的插件在项目配置之前运行。

gradle 文档中的示例从构建脚本中删除存储库。这意味着您可以在 Init 脚本插件中读取您的配置并决定应用哪些插件。当然,您的配置名称应该是固定的,因此您的 Init 脚本插件应该能够读取它。

于 2014-12-22T23:07:17.437 回答