2

我正在尝试构建一个 gradle 插件,它有 2 个任务,类型GradleBuild和调用其他几个任务。看起来像这样

class MyPlugin implements Plugin<Project> {
    void apply(Project project) {

        project.task('first', type: GradleBuild) {
            startParameter = project.getGradle().startParameter.newInstance()

            tasks = [
                'doSmth',
                'second'
            ]
        }

        project.task('second', type: GradleBuild) {
            startParameter = project.getGradle().startParameter.newInstance()

            tasks = [
                'doSmthOther',
            ]
        }

        ...
    }
}

在命令行上我开始我的第一个任务

gradle first

现在,由于任务基本上是在启动一个完整的新实例,所以在任务doSmthGradleBuild中设置的所有项目属性(例如)都无法在doSmthOther中访问。project.ext.myvalue=true

如何将在doSmth任务中设置的所有或某些项目属性转移到doSmthOther任务?

4

0 回答 0