Groovy:在这些情况下如何替换 leftShift 运算符?

Ósc*_*car 3 groovy deprecated

我在我的下一个插件调用build.gradle

apply plugin: 'com.company.gradleplugins.plugin'
Run Code Online (Sandbox Code Playgroud)

当我编译时,Jenkins 警告我关于 Gradle 5.0 及其弃用:

Task.leftShift(Closure) 方法已被弃用,并计划在 Gradle 5.0 中删除。请改用 Task.doLast(Action)。

在 build_c4218hywg.run(/Users/user/Documents/project/projectfolder/app/build.gradle:12)

标准替换很清楚(使用doLast替代<<),但我发现了一些我不知道如何更新的操作(整个项目不仅是我的)。

所以,在插件中,我有一些:

configJSON = mainProperties.getConfig() << buildProperties.getConfig()

imageNames << image.getFileName()

for (int i = 0; i < m.groupCount(); i++) {
    list << m[i][1]
}
Run Code Online (Sandbox Code Playgroud)

等等。目前这样做的方法是什么?

Ósc*_*car 5

好的,最后我在插件项目中找到了这一行。

有下一个代码块:

if(it.hasProperty("android")) { 
    project.task('mainTask') << {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

所以解决办法是:

if(it.hasProperty("android")) {
    project.task('mainTask') {
        doLast {
            ...
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我的错。