如何在我的自定义gradle插件中访问配置的依赖项?

时间:2019-06-09 18:31:40

标签: java gradle plugins configuration

我正在设计一个自定义的gradle插件,以帮助用户在多项目构建中发布项目,其中项目可能依赖于同一构建中的其他项目。

在插件中,我定义了一个名为“发布”的任务。在应用插件的项目中,我定义了一个名为“ release”的配置,该配置依赖于另一个项目,如下所示:

configurations {
   release
}

dependencies {
    release project(":project1")
}

在我的自定义插件中,我试图读取发布配置的依赖性,以确定哪些上游项目需要首先发布。

@Override
public void apply(Project project) {

    Task releaseTask = project.task("release")
        .doLast(task -> System.out.println("Releasing " + project.getName()));

    Configuration releaseConfiguration = project.getConfigurations.maybeCreate("release");

    releaseConfiguration.getDependencies()
        .forEach(dependency -> System.out.println(dependency));
}

问题在于releaseConfiguration似乎无法读取项目的build.gradle文件中定义的任何依赖项,getDependencies()为空。

如何设置插件中发布配置的依赖性,以设置要定义的任务的依赖性?

0 个答案:

没有答案