简体   繁体   English

将Android build gradle版本更新到3.2.1导致错误

[英]Updating Android build gradle version to 3.2.1 is causing error

Everything worked fine until I updated build gradle to 3.2.1 and now I cannot build my project. 一切正常,直到我将构建gradle更新为3.2.1,现在我无法构建项目。 I have a task that generates some variant specific code as defined below: 我有一个任务,它会生成一些特定于变体的代码,如下所示:

applicationVariants.all { variant ->
    def generateClientIdConfigTask = project.tasks.create(..)
    ....

    variant.variantData.sourceGenTask.dependsOn generateClientIdConfigTask
}

This line is causing following error: 该行导致以下错误:

Caused by: groovy.lang.MissingPropertyException: No such property: sourceGenTask for class: com.android.build.gradle.internal.variant.ApplicationVariantData 引起原因:groovy.lang.MissingPropertyException:无此类属性:类的com.android.build.gradle.internal.variant.ApplicationVariantData的sourceGenTask

I already updated distributionUrl in the gradle wrapper as below: 我已经在gradle包装器中更新了distributionUrl,如下所示:

distributionUrl=https://services.gradle.org/distributions/gradle-4.6- all.zip distributionUrl = https://services.gradle.org/distributions/gradle-4.6- all.zip

Any help would be appreciated. 任何帮助,将不胜感激。 Is there a different way to write dependsOn ? 有没有其他方法可以编写dependsOn

API android plugin was changed. API android插件已更改。 You need to do this (replace variant.variantData.sourceGenTask to variant.variantData.getTaskContainer().sourceGenTask ): 您需要执行此操作(将variant.variantData.sourceGenTask替换为variant.variantData.getTaskContainer().sourceGenTask ):

applicationVariants.all { variant ->
    def generateClientIdConfigTask = project.tasks.create(..)
    ....

    variant.variantData.getTaskContainer().sourceGenTask.dependsOn generateClientIdConfigTask
}

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

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