繁体   English   中英

将任务依赖项添加到Gradle中的现有插件任务?

[英]Add Task dependency to existing Plugin Task in Gradle?

我包括第二gradle这个文件my.gradle在我build.gradle文件。

my.gradle的内容是:

apply plugin:MyPlugin

class MyPlugin implements Plugin<Project> {

    @Override
    void apply(Project project) {
       project.tasks.create(name: "myTask", type: MyTaskClass) {
       }
    }
}

在我的build.gradle我设置在顶部:

apply from: 'myPlugin.gradle'

现在我想在build.gradle设置一个任务依赖build.gradle

tasks.myPlugin.myTask.dependsOn += someOtherTask

当我构建时,我收到以下错误:

> Could not find property 'myPlugin' on task set.

如何访问myTaskmyPluginbuild.gradle

编辑:我试图确保someTask在myTask之后运行。 我尝试这样做:

taskX.finalizedBy taskY

在我的情况下:

tasks.myPlugin.myTask.finalizedBy someOtherTask

但前者不起作用。

以下脚本将完成此任务:

my.gradle

apply plugin: MyPlugin

class MyPlugin implements Plugin<Project> {

    @Override
    void apply(Project project) {
       project.tasks.create(name: "myTask", type: Copy) {
       }
    }
}

build.gradle

apply from: 'my.gradle'

task someOtherTask << {
   println 'doLast'
}

project.tasks.myTask.dependsOn(someOtherTask)

如果您正确包含插件,则应该看到您的任务。 例如,如果你包含java插件并运行

gradle任务 - 所有

您应该看到包含compileJava。 对你来说也一样,运行gradle tasks --all 你应该可以将它作为tasks.myTask或tasks ['myTask']引用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM